02.26.06

I’ve been cracked!

Posted in General at 4:52 pm by Nick

Strangely enough, I don’t pay much attention to the main portion of my web site anymore. I’ve been running a relatively old version of phpNuke (it was current at the time, but that was a few years ago), which has recently been cracked.

Thus, I have deleted all phpNuke software on this server, I’m a few minutes away from smashing the database (which is somewhat sad, it has a lot of info in it), and now I have to go download a newer version for installation.

My web site has needed an extreme overhaul for a very -very- VERY -VERY- long time, but I hate dealing with that kind of stuff generally. In any event, it will be updated sooner or later. ::sigh::

This time around it will most likely be related to Kaladea, as GWA is pretty much a lost cause. I am sorry for all of those who really wanted to play (or did play in the past), I just dont have the time nor energy to make GWA what it should be. My focus is elsewhere (Kaladea would be non-existant if not for a few friends and some school/college credit) now. And no, the bases I’ve developed with will not be up for public download ever, though I may throw some random bits of code out there.

If you are looking for Asteroids v2 then keep up with SWFotE because I think they are going to put it in the next release.

Actually, on another note, maybe I’ll move my homepage to this blog. At least for the time being.

Computer Science II – Assignment #3

Posted in ALPHA, Computer Science, Programming at 4:38 pm by Nick

Time: 5 hours
Total: 42 hours
———————-

This project was actually fairly interesting, as it enabled me to play with maps (which is an STL class for associative arrays). It took forever to finish, but I did get it done. Here’s the low down (copied from the actual requirements):

Assignment 3. An airline reservation system class.

1. You have flights with numbers like FTA-100, FTA-105, FTA-200, etc. (Flying Tomato Airlines).
2. Each flight has a captain, co-captain and head flight attendant.
3. Each flight has an origin city and a destination city.
4. Each flight has 50 ailse seats and 50 window seats organized as 2 by 2 with an aisle down the middle.
5. Some seats have passengers. Some passengers prefer ailse, some prefer window seats.
6. Passengers have connecting flights, meal preferences (chicken, beef or vegitarian), first and last names.
7. Your system has the following functions:

  • Create a flight: CreateFlight(“FTA-100″).
  • Set captain: SetCaptain(“FTA-100″,”John Jones”);
  • Set co-captain.
  • Set flight attendant.
  • Set origin city.
  • Set destination city.
  • Assign an aisle seat to a passenger. (seat is assigned when there is a name associated with it)
  • Assign a window seat to a passenger.
  • Assign menu item.
  • List flights
  • List flights and crews.
  • List flights by origin city
  • List flights by destination
  • List passengers by seat.
  • List passengers by seat and meal choice.
  • Free a seat (passenger switched airlines).
  • Delete a flight.
  • The test flights are hard coded, so if you want to add your own or change things around you will have to modify the source and recompile. You can download the actual source this time at:

    http://www.nick-cash.com/download/cs2/3/main.cpp
    http://www.nick-cash.com/download/cs2/3/main.h

    Or you can view the source exported (like normal) and download the Win32 binary at:

    http://www.nick-cash.com/download/cs2/3/

    02.20.06

    KaladeaMUD – Scripting

    Posted in ALPHA, KaladeaMUD, Programming at 8:09 pm by Nick

    Time: 1 hour
    Total: 37 hours
    ——————–

    I’ve decided that after I get the OLC set for room creation I will take a bit of a break from the programming aspect. I seriously need to do some reading.

    Richard Bartle’s book Designing Virtual Worlds has tons of information I should at least be aware of before I continue further. Beyond that book is the book MUD Programming by Ron Penton that I should also read in relation to design issues. His later example ties the whole mud to scripting, which would be -very- -very- nice to have. If I plan to integrate scripting, I need to do it now. It takes some serious work in the design stage (the SGE scripting system is a testament to feature addition without much through to the design aspect), and I should at least be aware of such things.

    In the mean time I’ll keep up the programming with CS II and hopefully finish the phpQuote Engine (which will be publicly available to view).

    In other news, I’m really far behind in my other classes and I definitely need to play catchup this week. I’ll see what I can do about phpQuote though, it would be nice to get it rolling so we can store the ALPHA quotes.

    02.16.06

    Animation – Big Annoyance

    Posted in ALPHA, General at 2:41 pm by Nick

    Time: 1 hour
    Total: 3 hours
    ———————

    I have some very mixed feelings about this project. Not only is it not easy to devote time to, but the machine I am working on with it is not nearly as capable as one would need (I’m talking about waiting fifteen minutes for a full rendering of a very short animation).

    The only path I see is to devote my time to the programming aspect of things: write programs utilizing OpenGL (OGL) and/or DirectX (DX). However, this would be very very time consuming, and it would definitely take away from KaladeaMUD (a project I have been aspiring to do for years). Thus I am at a crossroads, either dump this and run with Kaladea for both projects, or split my time and work on some programs utilizing DX/OGL. ::sigh::

    Any thoughts?

    KaladeaMUD – Shared String Library

    Posted in ALPHA, KaladeaMUD, Programming at 2:19 pm by Nick

    Time: 4 hours
    Total: 36 hours
    ———————-
    A very vital role of any program is to use resources efficiently to accomplish its task. This is no different for games.

    When you create an object in game, it lives within the resources of the system the program runs on. You can conserve space by storing data that is the same (and always will be) one time for all objects of a given type. For example, if you have one hundred storm troopers prancing about the game, ready for interaction with your players, their name’s will never change.

    The purpose of a shared string library is to cut down on memory usage by combining an efficient way to look up and store strings one time, as opposed to each time they would have been stored. As stated before, the name of a mobile game controlled character (NPC or mob) will never change unless a game builder deems it so. Thus, if you have anywhere from one to ten thousand of them (or more), you can get by using one allocated string. This works by keeping a number stored along with it to store the number of references to that particular string that the game needs.

    My recent playing with binary tree’s helps a lot with this, and is, in fact, almost exactly what needs to be done. The examples we used for class stored string with reference counts, which is what the MUD will do. However, I have chosen to employ the use of an already tested and proven library produced by David Haley (otherwise known as Ksilyan). It is relatively simple to get working and produces good results. It operates somewhat differently, using a hash table (an array of linked lists it generally happens to be, though an array of binary tree’s may work better) instead of a binary tree. This can be good sometimes, as they can often be -faster- than binary trees. That is something very hard to do.

    Most of this time was spent doing research, downloading, compiling, and fiddiling with the library. It still remains largely untested and unused within my code (rooms and players have little need for shared strings), though it has been successfully added to Kaladea. Now I must resume work on the OLC for rooms. Once this is done I’ll throw the thing up and do a bit of testing, and possibly work on the task system a bit more.

    In related news (yay), O’Kane has given me permission (he even installed MySQL) to use the machine Sidhe that belongs to UNI. If you haven’t heard my rant, just know it is a very high end machine. You can find it at http://sidhe.cs.uni.edu .

    phpQuote

    Posted in ALPHA, Programming at 2:02 pm by Nick

    Time: 2 hours
    Total: 32 hours
    ———————

    This project is now very near completion. You can add, delete, login/logout, and store quotes. I will work on being able to find quotes by author, category, text, and date. This will be a good means of storing the ALPHA quotes when done.

    Thats all for phpQuote news for now.

    02.08.06

    Random Bits of Life – Excuse to Procrastinate

    Posted in College, General, High School at 10:17 pm by Nick

    “Talent does not determine how good you can get, only how fast you get there.”
    ~Dick Gabriel

    This quote is actually from Wallingford’s blog. I found it especially fitting today and yesterday, with the various conflicts I’m currently dealing with in my academics.

    Never before have I ever felt so undermined and unproductive, and yet, so accomplished. I’m one of the few junior’s who can say they go to college (albeit part time), and yet, I feel my academic zeal slipping. Like, seriously slipping. Fast. I’ve become very sick and annoyed with high school. It seems more like an annoyance than anything else these days.

    This flame is constantly fueled with my college planning (I’ve got the courses I plan to take -totally- mapped out for UNI, though its not in a semester schedule (i’ll save that for later)). Also, the fellow I have e-mailed about the MIS major in the Management department was very nice, making me even more eager to join the college ranks. The reply form him was a tad amusing as it said “if you plan to visit the UNI campus,” which I do every weekday!

    My feelings are strange currently. For the first time I feel like I’m goinging somewhere, like I’m realling doing something, and like it may actually matter. I’ve always ranted about about the importance of education, but never has it seemed more relevant than now. I am going places (finally), and the faster it happens the better.

    Conversely, my performance is (way) down. The grades are in from last semester, and though they are relatively good, there is definitely a downfall (GPA drop again, ::sigh::). Every single one (to my amazement on a few) was an A or A- except math. What was math? C+. Yep, thats right, a C+. For the first time I’ve achieved (wrong word?) a C+ as a semester grade. I will blame this on a few things to defend myself (bad teacher, my mom’s illness’, my complete lack of mathematical competency, lack of time budgeting for math assignments, rather large amount of lengthy problems on the final (which screwed a lot more people than just me)), but it is my fault.

    I need a break! Holy crap, this week has been bad! And tomorrow is “Zero Hour”. My brain is going into meltdown mode. Sadly spring break isn’t until March (though next wednesday is professional development day (I still have UNI class)), or, more specifically, 4 weeks from now. ::sigh::

    Oh, it turns out I should be able to take a few MIS classes over the summer! I’m probably the only kid around here that is happy with the news they could attend school over the summer (hurray for speeding up college). Granted this will cost money, something I still need to discuss with my parents. However, things remain hopeful. If all goes well I may be able to grab my bachelor degree’s in 3-4 years, and have masters in another 1-2. This is all still subject to many things (for example, a really good job offer (one can always hope, eh?)), but going on to get Phd’s would also be nice. With the certificates I wish to get I may have to add another year or so onto my college experience (or should it be a college expense?), so it seems likely that going to classes through the summer’s will be a good option for keeping myself on track.

    —-

    What I am avoiding by currently writing this (with most of it due tomorrow):

    A Computer Organization assignment (and test to review for), several math assignments (I’m so lost…), an eastern civilization assignment (well, partially, only some of it is due tomorrow), and a book to read for great books.

    – Edit –
    Interesting note: This post has the id 200, meaning it is the 200th post I’ve ever written. Crazy.

    Change in Presentation

    Posted in General at 10:46 am by Nick

    Right, so I changed he layout. We’ll see how it goes, I may change it back. Its a little more, er, computer-esque you might say.

    02.07.06

    KaladeaMUD – Beginnings of OLC

    Posted in ALPHA, KaladeaMUD, Programming at 12:23 pm by Nick

    Time: 6 hours
    Total: 30 hours
    ———————–—
    OLC stands for OnLine Creation. This means that without rebooting the game, and without the help of another program (even something like pico/nano/vi/notepad/wordpad..) you can create, delete, and otherwise edit features of the game. OLC is very powerful. Without it it can be hard to manage, add on to, and fix the virtual world that employs it.

    I have begun work on the OLC system for rooms. I realized sometime ago that I would, in fact, need vnum’s (virtual numbers). This a number that will be assigned to each virtual room within the world (each one unique). Thus, we will have a finite number of rooms avaialbe to us. Luckily for us, that number will be up in the 4 billion range, so there is absolutely nothing to worry about. Also, with the way I’ve made it, you can reuse vnum’s, though the unique room id’s (employed as a sort of primary key in the MySQL table) are also finite and are never reused. This will probably never be a problem, and if it is I can just up the value and give us even more.

    I didn’t mention this before, but I’ve worked on a task engine. This will simply be another way to keep track of what things need to be done, and I plan to have both a web interface and a game interface for it. It will note the urgency, and each player will be able to have tasks (though only admin’s can assign them). It will also note the details of the task, give a completion percent to be specified by people, and completion dates.

    The system will be modified from a very similar system used be a fellow mud administrator who was kind enough to give me this code. Granted I will have to do all of the work to tie it into Kaladea itself, but a good portion of the web interface is done.

    Unrelated to Kaladea, but still important (as working on one project all of the time can be frustrating), I’ve begun work on what I call the phpQuote Engine. With so many good quotes from people I’ve decided to make a web based engine to store them. This also will run off of MySQL, and I’ve downloaded the Apache web server to test this all on my own system.

    You can expect this to be done by next week. Then we will have a place to store all of the ALPHA quotes and be able to look them up! Should be interesting.


    On one last note, some user on Sourceforge wishes to take over the Xlib project. STRANGE! It has a rather high activity percentile when I check it, but a rather small amount of downloads. This is fine by me really, as I really don’t plan on doing much more (if any) work on the Xlib project itself. I’m interested to see what they will do with it, or if they just want the xlib name.

    02.03.06

    Thoughts

    Posted in General at 12:27 am by Nick

    As of late I’ve had many thoughts on several topics (most of which I would probably blog about), and yet I havent had the time to write anything about them. Now, when I should be sleeping, is as good of a time as any.

    First is literature. All of this was spawned by discussion in Great Books aboud Oedipus the King. I’ve often felt that English class jumps farther into a piece than the author ever intended. As human’s we are able to pull meaning from things that are essentially unmeaningful (thus why some political cartoons have dozen’s of possible interpretations).

    Do you ever think that Sophocles just wanted to write tradegy? Perhaps he chose a few keen interesting phrases, but I somehow doubt he actually tried to make Jocasta seem motherish. This is true for many things as well. I’ve had several comments on my poetry that literally made me think “Where the hell did they get that?” This is all fine and good. People should think what they want, but English class seem’s like overkill sometimes by drawing meaning from things that (quite possibly) were never intended to have beyond normal meaning anyway.

    Next, to a completely different topic, is my comment here that I sent to Professor Wallingford (the CS Department head at UNI) about one of his more recent blog posts. It mentions how CS introductory courses are probably similar to Physics introductory courses. They leave the students feeling rather stupefied and unsatisifed with the class. They leave the student feeling -less- like a physicist or a computer scientist than when they entered.

    As a CS undergrad I can definitely say his fears are true. Of my CS I class, only two people (myself included) decided to take CS II. Many of them complained about it being too confusing, “not for them”, or just flat out hating it. I believe this is spawned by a rather upfront aproach to teaching CS. We do not cover the applications of comptuer science, and all of the example programs we write demonstrate techniques, but they are rarely (if ever) intresting and fun to do.

    Thus I propose an idea: involve more games and simulations. Everyone likes to take away a product. If you take an art class you would want your art back at the end so you can show it off. Comptuer science is no different. If you make a game demonstrating the techniques, and make it fun, extendable, expandable, and overall just interesting to work on then you will capture the students mind. Sure, game’s arent for everyone. However, a student making a game that takes four hours to make, test, and play around with (which he can later extend, expand, and show off to his friends) will learn more than sitting and making a program that sorts words.

    Simply put, in order to learn, the student really need to take the initiative to do it themself. You can get help, and you should, but you must -want- to learn if you really wish to succeed. If you find something that is interesting to you and continue to work on it then you will learn much more (and much more quickly) than others.


    Actually thats all that comes to mind currently. Sorry folks, I need to sleep.

    « Previous entries Next Page » Next Page »