I have been really busy with work recently but I’m making some time to discuss my current hobby projects. One of these project is more of a solo gig and the other, I’m hoping, will start with me doing most of the work at first but eventually I’d like other developers to join in and help.
This first project is similar in style to Arthur’s Grove (AG). AG was a little game I released not too long ago but this time I’m stepping up my game a little more now that I’m more comfortable with a lot of the game mechanics I used when developing AG. The worlds are completely different and the stories have nothing to do with each other (not that AG had much of a story anyways) but the game itself will be similar in style because I find myself gravitating towards this style of game a lot.
The second project has recently grown in importance to me since, apparently, Snoxd has been down for whatever reason (most likely due to the lack of contributing community members). As much as I would like to see Snoxd succeed, my feeling is that the private KO server community needs strong developers and not a bunch of “binary hackers.” A community that doesn’t share will never grow and a community that doesn’t support and praise good contributions will never provide the positive reinforcement necessary to keep people contributing. Sometime in the future I’ll write up a more complete article on my feeling towards the KO development community and a direction for where I would like to see the community head towards in the future. But nevertheless, I have been working on a completely new implementation of the KO AIServer architecture using SDL2 and MySQL server. Currently I’m able to spawn in a group of NPCs with this custom code and have the AIServer communicate with the stock 1298 Game server which allows the player to login and see the NPCs. Most of the work here comes from re-implementing the multi-threaded nature of the AIserver using SDL2, along with all the network calls using SDL2 Net. This code is completely cross-platform and will compile on Windows/Mac/Linux.
One very important reason for using MySQL server instead of Microsoft’s SQL server (which the official USKO, as well as all private servers, use) is because if you were to compile the KO servers on Linux you would will need access to a Microsoft SQL server on another remote windows machine. Therefore, no matter what, a machine running Windows is necessary. However, if the database is a MySQL database this isn’t an issue as MySQL can be installed on any prominent operating system. Hell, even a custom coded server running Sqlite would provide more versatility than SQL server (but I digress).
So that’s the sort of stuff I’ve been working with recently. If you have any questions, or would like to help contribute to the OpenKO project, let me know. The long-term idea is to replace each of the KO game servers for the stock 1298 release one at a time. Once this is complete and the binaries are virtually interchangeable with the originally released 1298 private server binaries we will start writing a custom 1298 client using SDL2 and OpenGL. This is the tentative plan, and likely won’t recent full attention until I have finished my PhD and have find a job. But the progress made so far is still quite an accomplishment relative to the stagnation which unfortunately permeates the KO development scene. This will eventually change though because I know there are passionate developer out there and I would love to help be apart of that change.
So lately I’ve been working a lot with C++ to beef up my skills for possible future employment. Part of this work has involved me going back over Arthur’s Grove (AG) and writing it in an object structure. I’ve also started using Git version control for similar reasons. So the results of the week are as follows:
I added a non-hostile bug entity to the world. It walks around randomly and is destroyed in one hit. They are mostly there for amusement and to add to the environment.
I added the ability to sail across the ocean while riding a whale!
I also added the ability to shoot tsunamis across the sea, for future sea combat.
I added a basic worm enemy which will turn up dust in the player’s face. The movement for the worm enemy is a simplistic straight line but more intelligent enemies will come soon.
Ok, so I’ve been pretty busy. Right now, as I type, I’m running a special simulation in Matlab that could quite possible become a pillar of my dissertation. Since school started back I’ve settled into quite a nice little schedule. I’ll wake up around 7am, shower, eat, have a cup of coffee, and spend an hour or so just “waking up”. It is pretty nice! I read a post on Reddit about how waking up earlier and making work part of you day rather than waking up for work can have a profound influence on your mood. And from what I’ve experienced so far I would agree!
So anyways, I will wake up, head to work, head home and then relax a bit. For the past 15-20 days I’ve been streaming game development on the creative section on Justin.tv from about 8pm to 10pm or so. I stream for about two hours each day to keep the progress on Lurid steady. Hopefully after enough 2 hour work days I’ll have something worth showing off to friends and the gamedev subreddit. We’ll see!
Also, I switched web hosts, I’m now on Amazons EC2 servers. It is terrific, I should have made the switch earlier! That’s all for now, I need to check on my simulation. I hope to keep you updated.
I recently stumbled upon a website called “Game Jolt“. I updated two of my recent games/demos. The website seems to have a ton of traffic which is an awesome way to test prototypes/game ideas with others and receive feedback. I’m still new to site so I’m not sure what all it has to offer but hopefully a few people will find my game interesting and stay in contact. I find that being apart of a small community really helps motivate me to work on projects that I would have otherwise left alone.
With the big game jam coming up soon I’m hoping to lay a foundation for Lurid with the core components consisting of – SDL library, Tiled map support, and Famitracker 8bit audio support. We’ll see what happens, if the core could be built in C++ I’ll be a happy guy.
The Cube World server stuff seems to be at an OK spot for now. I’ll let people kind of feel out the experience and see if I can get a community started (or not). Since I got that up and running I’ve been working with the GSL (GNU Scientific library) doing some linear and nonlinear reaction diffusion systems. Check out some of the results!
For now I’m thinking about switching gears back to the 6502 emulator stuff! I’ll keep you posted on how that develops and what I actually decide to do with it. I also get an email from the girl who did the music for Lurid (what little bit of music it had). She asked about how the project was coming along… I’m not sure how to response and as a result will probably ignore the email but it got me thinking. I do miss working on Lurid but the lack of support really hinders progress. I’m not being paid as much so that makes things even worse. I’m not sure what will come of that project (if anything).
There will be very few posts over the next week because I have a big test coming up! This is my comprehensive exam and passing / failing this exam will make or break whether I get a chance to prepare my dissertation! Wish me luck and I’ll post more in the coming weeks after my exam.