Wednesday, 30 November 2011

Weekly Break

Lua script support added to every mapobject. Ive split the interactable object class into a luaobject class in order to make it easier for other inherited classes to include lua script support.

Lua and events added to spawnpoints. A script to add a main mission has been added as well as a new game starter map which is currently empty.

Functional tasks menu on pipboy. Of course it still needs proper positioning and detailing but the basis are there. If tasks are missing then there are none available to show.

Next on the list:
  • saving the world onto a file and the game map into another
  • detailing the pipboy
  • waiting and alarm clock
  • making the character creation window functional

Sunday, 27 November 2011

Evolution of the code #8

Right, enough skyrim and assassins creed - time to get back on the code.

Saving time and unit stats
Time can now be saved along with everything in the world. Unit stats (such as primary or secondary) are contained into a .NET dictionary regardless if they are player units or npcs. The problem is that serialization(or saving) of the instance is not included out of the box in .NET, but with a few tweaks im managed to force remember every data in that dictionary into the file.

Ive also managed to fix the player vs npc vs smarter npc problem which was present before. As i see it, in fallout there are 3 bases of units regarding the special character creation system. One which is very complex (the player), one which shares some features with the player (such as the primary status) and another which is simple (much like the non combatant standard civilian). The problem was that I had to differentiate these somehow and implemented the perfectly optimized solution.

Basically, right now every unit holds the character statuses in the .type definition file (including the player and those statistics will be set once the character creation window pops up). This ensures that no further memory is eaten up unless its needed. Once any of these statistics are modified, the unit will save the statistics differently from the .type file.

Having default statistics is as simple as setting the correct values into the unit .type file.
defaultStatistics
{
strength = 5
perception = 5
endurance = 5
charisma = 5
intelligence = 5
...
}

I suppose what is left now is to make the character creation window which spawns every time to work.

Objective window (and possibly other ones) will be non functional this week
Since I've begun working on the pip boy, I'm planning on doing a "modular" window similar to the one from the tech demo. Therefore some windows may not work until its completed.

Sunday, 20 November 2011

SVN link and some inspirational videos

Ive decided its time to make the svn available and let the public play with it. If anyone has any modeling skills available and can import models to neoaxis please do! If you dont know what version control is, check out Tortoise SVN.

Warning: Testing any of the features may or may not make the game unstable, crash or bug.

Link to SVN:
http://van-buren-project.googlecode.com/svn/trunk/

Somehow I always found this video very motivating when working on this project.

Sunday, 13 November 2011

Skyrim edition update

Skyrim menu style
Why? Because I could :D

 

This is going to be a very short update as I need to get back to my game :D
 
The progress has been show lately but I have managed to get the basic profile system done. User can now select a profile and save their settings there. Game time has been added but so far it does nothing except pass while a map is loaded. Will have to make it pass fast as user fast travels as well. I also got the chance to play with some of the particle effects and such. I just love that menu. It's so simple and yet well done.

The building roofs also need coding but the concept is already there. Its just a matter of entering a zone and hiding / showing a model as the player character enters or leaves it. No updates on the combat manager yet but I'm working on that as well.

That should be all for this week.