Browsing the archives for the engine tag.

Serious Sam HD: The Second Encounter

Games, One week, one game

This weeks game for my One week, One game project is Serious Sam HD: The Second Encounter.

Serious Sam isn’t regular game in anyway. It is very weird game, from it names to the gameplay. I can’t really say that it is a good game, but I can’t say that it is a bad game either.

The story is horrible, some levels are extremely boring and gameplay is only about killing everything. I could easily write whine post and tell how horrible this game is, but I don’t.

Because I like this game. There is LOTS of stuff to shoot. It isn’t about the aiming skills or reflex, it is more about managing large groups of enemies. I really can’t say why I like it. It is just so fun to sometime just play something so stupid. :P

There is also a multiplayer that makes the game twice more fun. There isn’t much players on Serious Sam, but when you find server full of people, the game is seriously awesome. 12-24 people running and shooting everything that moves on same server is just so damn epic. Btw, I uploaded some demo files from game where I played on a 12 player server. If you want to see them, you can download them from the files section.

One thing to note, the game-engine is AWESOME. It can draw hundreds of objects with LONG view distance without any problems. Effects, textures and all the other stuff also looks nice. The engine is also very lightweight. (And it has nice console with some kind of lua stuff on it :P )

Just for note, I have not finished this game. I have played trough the first encounter in coop. But this is Serious Sam and nobody cares about the story. I just like to join random server and kill everybody.

No Comments

Devlog – cvars and logging system

Coding, Games, Projects

I am currently building my first game/game-engine with c++. Before even thinking too much about the actual game idea, I want to make sure that the engine I am creating is good and works as I want.

I am building my engine very object oriented way. This way it is easier for me to manage the system, and makes it faster to create complex code at the later process of the development. But I also want to make the system flexible enough to allow me to change the way how the engine works if needed.

I have just finished cvar system that the engine can use. (get,set variables) In future I will add ingame console that can change these variables. I will also add way to store the variables on config files.

Right now I am finishing logging system. It is not very complex system, but it is very important to have. The logging system takes advantage from the cvar system I have build, storing filepaths and settings there. It can log events to console, file or both.

To filter important messages from random game events I have designed 4 level system to filter messages.

  • 0 = debug message (Example: ai debug messages, small changes, etc. Can be bit spammy)
  • 1 = game events (Example: kills, deaths, inventory changes. Good information for statistic parsers)
  • 2 = engine events (Example: map change, engine start, etc)
  • 3= Critical error (Example: missing textures/files, failed to init SDL/engine. Game crashing bugs)

User can choose level for the logging. Example if user wants to only see engines messages, he could choose 2. Then he would see engine events and critical errors.

Some users may want to see more information on the console they can choose 1. With filter level 1 user can see everything else expect floody debug messages.

When debugging error, developer can set the level to 0 and get all information game can give. Making good log file to analyze later.

The project is currently under heavy development. I will post more when the project goes forward.

No Comments

Napalm Engine Framework Concept

Coding, Projects, Web developing

I have recently started new php project. It is my own php engine/framework.

I have tried couple frameworks and all of them have been pretty nice. I especially like cakephp.

But the problem with these sometimes is that they force too much where what code should be placed. Example the Model View Controller stuff. The idea is great idea and I have nothing againgst it, on some small project cakephp/any most of the frameworks are way too massive. (in my opinion of course)

But if I code from scratch and place all if my code where it feels good to place it… Usually something is somehow in wrong place. This is when I get the idea for my own framework.

Napalm engine framework (or NeF in short) is a php framework that doesn’t make creating code any faster. It just helps to keep code where it should be. It should help managing code base on small/medium project.

This framework also won’t force user to place some code on some place. It only offers way to manage code in standart way. If user doesn’t want to use all of the elements, rest of the system won’t break.

NeF will also be simple to learn, because there isn’t any kind of complex API.

The idea of application workflow is following:

Actions are things that gets users input, does querys to database, handle data, etc.

Render segment is in 2 parts:

  • View is a HTML document with php links to blocks
  • Blocks is a piece on a view. Example a content area/navigation.

Then there is 4 different helpers. Helpers are small code snippets that should be executed, but really aren’t part of actions/views

  • Pre-action helpers – stuff that is executed before actions
  • Pre-render helpers – before render
  • Post-render helpers – and after render
  • Normal helpers – can be used anywhere in code, called by specific function.

And if I will ever get this done, I will publish this under open source license.

No Comments