What consoles have done for gaming….

Found this picture on reddit:

Share
Posted in Uncategorized | Leave a comment

Choosing a network library

Re-inventing the wheel is bad. I need a network library for Kojvenepane. My primary requirements are

* the advantages of TCP and UDP respectively but not the disadvantages
* good design. C++ would be nice but not required as I’ll encapsulate it anyway
* speed and reliability
* packet priorities, channels or some other system of deciding which packets to scrap if need be
* portability
* inexpensive or free

These are the alternatives I have considered:

ENet – opensource and portable. Features connection management, sequencing, channels, fragmentation & reassembly of huge messages, aggregation, adaptability, dynamic bandwidth throttling and more. All useful features indeed. It lacks sample code and there’s one more major issue: I can’t get it to work. The client refuses to connect to the server. I have some more debugging work ahead of me if I want to pursuit this…

RakNet – all the features I’ll ever need and more, including higher-level functions such as lobby system, NAT punch-through, voice communication… but it’s commercial. I want it but…

HawkNL – opensource low-level API featuring “support for many OSs, groups of sockets, socket statistics, high accuracy timer, CRC functions, macros to read and write data to packets with endian conversion, and support for multiple network transports.”

ACE – “The ADAPTIVE Communication Environment”, opensource, portable, but focusing more on business than games. It’s very feature-rich, has all kinds of IPC functionality for example. How well does it handle gaming-specific issues like lag and latency?

Zoidcom – higher-level library featuring “automatic replication of gameobjects and synchronization of their states over a network connection in a highly bandwidth efficient manner.” . Free for non-commercial use.

OpenTNL – Torque Network Library. The links (including the download link) on the page doesn’t work and the site hasn’t been updated since 2005…

DirectPlay – nah, not portable

Well.. what to do…

Share
Posted in Technical ponderings | Leave a comment

Single-player

You know what, small change of plans here: I’m not gonna do single-player. I’m not gonna develop an entire codebase just for single-player and then spend SO MUCH TIME creating multi-player code with LOADS of afterthought and redundancy. Redundancy is the developers worst enemy, you know.

Instead, I’ll just do multiplayer. Get started on the server/client networking right away. Will be so nice to have that up and running early and not having to worry about how already implemented features will affect networking performance and latency later on.

No worries, you’ll still have single-player. It’ll just be multiplayer with a single player. :)

Share
Posted in Information | Leave a comment

Cleaned up the blog

I pulled a few of my posts that seemed a bit pointless, made some changes to some other posts. I now have 12 drafts that might or might not be posted later, including the one describing the milestones.

Share
Posted in Information | Leave a comment

I had a great idea on how to do something….

I had a great idea on how to do something…. and things are looking better! I want to get some coding done!

Share
Posted in Technical ponderings, Uncategorized | Leave a comment

xkcd is right on the money as always…

Share
Posted in Technical ponderings, Uncategorized | Leave a comment

Now on facebook!

I made a facebook page for Kojvenepane:

http://www.facebook.com/nebol#!/pages/Kojvenepane/171361076238015

Share
Posted in Uncategorized | Leave a comment

Intermission

A somewhat surreal experience: A few days ago my colleague Magnus asked me, out of the blue, “How’s the game coming along?”

I thought I misheard, but it turns out he has read my blog! Uplifting to know it’s not only my mother and Jonas! :)

I’ve been trying to get some coding done, but it’s hard. My spare time is consumed by my kids, my girlfriend and a myriad other things. But at least I’ve been doing some work on a few helper classes including methods for translating coordinate data between different formats…

Share
Posted in Uncategorized | Leave a comment

New NPC, codename NPC#4

I thought up a new NPC, and oooh I like this one. It WILL scare you…. I’m trying to make each NPC unique in looks and modus operandi, and so far I’m doing pretty darn good, let me tell you…

No time for coding today. A bit annoyed.

Google seems intent on not indexing this blog. Searching for Kojvenepane brings up a stupid webforum-user instead.

Gotta get the ball rolling! Heh.

I’ve got to thank Jonas “jolu” Lundqvist for testing the application and bringing constructive feedback!

Share
Posted in Technical ponderings, Uncategorized | Leave a comment

Thoughts on polygons and fps

I worry that I might have to create my own scenemanager after all. I have a major algorithm optimization I can do, and I have a thought on how to handle the limitations of the StaticGeometry class, but if that doesn’t help I’ll have to make my own scenemanager.

Anyways, I’ll not get into that right now, I need to move on. I have enough polygons that I can continue with the game logic and see the results onscreen. Need to amp up the WorldManager so that it can handle continous movement in any direction, loading and saving of data, chunk management and all that hubbub. After that: walking around, jumping and stuff. And maybe some textures.

Share
Posted in Technical ponderings, Uncategorized | Leave a comment