Thursday, 24 April 2008

EconomicGrounds started + AbstractInfrastructure in the plans

Using Goegraphy in a hacked style - EconomicGround base class extends Geography and uses non-identical Geographies' point heights as its own plus replaces some cube kinds with street stones - check the screenshot, you can see that non-steep parts of the EconomicGround are overridden with pavement. Now it will also override steeps with stairs later when I get there...and we are getting near to a simple street/plaza implementation that will go together well with the AbstractInfrastructure a base class for determining different population formations.

Wednesday, 23 April 2008

OpenJDK, rpgcodex topic, jme upgrade

Today a tester has reported that he successfully run jcrpg in OpenJDK under Ubuntu Linux. I'm a bit surprised and happy that the open-source version of the Sun JDK is working this good. This mainly is interesting for Linux users as installing OpenJDK under Windows is currently rather hard for non-experts, but Ubuntu distribution (and most likely other Linux distros too) contain a package for it.

Recently I've opened an rpgcodex forum topic for discussing jcrpg related things. rpgcodex is a highly community based rpg site, their motto is "bring the 'role' back in rpg". A nice place with a lot of rpg-loving people.

Reading this post I updated jme to test the performance surplus. You can check jcrpg with the new updated library in SVN. (lwjgl was also upgraded.)

Otherwise not much news for today, only small tweaks and planning in theory (currently about populations' generation).

Sunday, 20 April 2008

New demo video at Vimeo

Java Classic RPG video for "Nightside" release from Paul Illes on Vimeo.

Check out my latest video to show the state of the project at the time of the "Nightside" release. Some fixes since the last release are also in this video - those that are only in the SVN repo.

Friday, 18 April 2008

Fixes, optimizations

Reviewing a big portion of the code to clean up old bugs hanging around. Small but important fixes and optimizations were done since the release came out. I've added multilevel placing of units in the encounter phase so that you always meet'em even standing on a mountain. Also I've detected a serious node culling issue I was not aware of yet that disabled the whole culling - now it's working again resulting in big boost of performance that we've lost on the way maybe months ago. In the end the working culling caused me to do some tricky zero quad placement to the UI base node (which is in jme's ortho queue, only 2D things for UI) to make sure it is not culled. A bit confusion maybe in jME or even a bug or two? Now tonight I've hunted down another old issue - the jumpy foliage and vegetation bug. Making the time counter field static in the TrimeshGeometryBatch solved the problem.

Thursday, 17 April 2008

The "Nightside" Release is out - call for animators

Check out the downloads, ungzip, play and report back with your experience here or at the forum. As things go further and further we are nearing a state where more and more 3D models and their animation is becoming tremendously needed in the art department! There are already several models (e.g. bear, wolf, fox, spider) that's in need of rigging and animation or there's the already rigged human model pair that just needs animation. So if you want to help out, join the effort! A great opportunity to practice animation and it would mean a lot to the free game development community and jcrpg.

"New animals as bear and spider were added. Humanoid groups were introduced with the humans and their basic economy. Basic populations and houses added for human groups. New sounds for animals and humans along with environmental effects depending on nearby beings and climate. Party Behavior and Pre-encounter input screens were introduced. On screen display extended with the 'Entity-O-Meter' which shows nearby groups' icons. New portraits and models by Archenemy."

Next steps will be to further sophisticate the encounter part, the UI, the ecology (especially for humanoid and with that the economy too), bring in the skills to the world, the EntityMember and PartyMember leveling, inventory and object system, and some kind of dialog system. This will round up slowly a fully playable experience. If you feel like you want to make the project a bit more manageable consider donating some bucks.

Tuesday, 15 April 2008

Entity-O-Meter, new textures/models, climatic sounds

These are the new things for today. I couldn't stop adding some new features like environmental sounds for climate belts (some rarely played nice bird sounds while walking around, or eagle cry over the desert :) ), the new Entity-O-Meter (icons showing the detected groups (will be skill based if you can detect them or not)) and some refactoring for the houses in texture and model too (also added the steps created by theotherhiveking with a wooden texture on it). I'll check a few things yet but the prealpha release is due in a few days. I hope you like these news! :)

Monday, 14 April 2008

Environmental Sounds working

With using the quick TreeLocator class in Ecology it's easy to determine the entities/groups around the player, so I've added a doEnironmental call to the GameStateContainer which is called when Engine is ticking an environment event in every 16 seconds. Then it's looked up which groups are around and the EntityMember descriptor tells what sounds can be played (EntityMember's audioDescription is used for storing this information). I've added sounds for the human commoners, gorilla and wolf groups. Check the SVN if interested, you'll get sounds right after starting a new game.

Saturday, 12 April 2008

Mountain Village - heavy geo tweaking and such

With heavy hacking put into Boundaries, TreeLocator ( a kind of speed up locator for positioned objects [economic, boundaries or whatever we need] like OctTree in 3D scenarios) GroupedBoundaries, Population and Residence plus the EconomyTemplate is ready.

GroupedBoundaries is for grouping smaller boundaries into a bigger pool which uses TreeLocator to quickly return the boundaries covering a given coordinate range. It is used in Population (towns and villages will be based on that class) to contain the boundaries of Residencies (houses, castles etc. will be based on that class) which build up a Population.

Each humanoid EntityInstance (=a group of humanoid beings) can have a Population. The Instance's HumanoidEntityDescription contains the EconomyTemplate which describes what Population class and Residence class the given entity can own in a given Geography (e.g. Plain, Forest or Mountain). Thus upon generating ecology, the humanoids settle their village around their HomeBoundaries' coordinate. :-)

With tweaking Geography getPointHeight adding exceptions for parts of the geography with humanoid economy it became possible even that the sloped Mountains can contain Residences (houses). Where a house takes place Geography point heights are made similar on each coordinate of the house covered part. Check the screenshots, how a population's houses override the mountain slope's default height. I will review the codes in the next few time-slots I'll have and then roll out a test release.

Thursday, 10 April 2008

Village revisited

Population (you may call it some kind of a village's economic implementation) class is getting itself tuned up. Experimenting with providing some basic population structure and synchronizing these first steps into the complex economic buildup with the World's getCube and Geography's getPointHeight functions. So far not too much complexity yet it's getting better I think. A village building quantity based on an EntityInstance's number of group and a dynamic updating system for the Population class is being worked on. Interesting. :)

Tuesday, 8 April 2008

Over 1000 commits to SVN

jcrpg project's SVN repository is now over the 1000th SVN commit. Great thing indeed! :-) Noteworthy news for me is that Radakan has changed 3D engine to jMonkeyEngine! Radakan is a sandbox RPG with 3D graphics, so kind of a similar in a lot or few ways to jcrpg. It's opensource too, so I'll keep an eye on it if I can learn some things from their code. It's lead programmer is MomokoFan a seasoned Java jME programmer who I know superficially from jME forums.

Monday, 7 April 2008

Working on Humanoid Economy/Ecology

It's obvious now that I cannot proceed on with UI development of encounter page till I've got some more sophisticated concept of Entities and their relation to each other and the player. So currently started to strengthen the code of humanoid ecology and with that the economy too to test the limits of memory and CPU before proceeding on with too much of humanoids around. ;-) I've added a CC-BY licensed human model created by Tiziana aka TiZeta. Thanks for licensing it! :)
PS.: I've further qualified things to please the Anonymous masses.

Wednesday, 2 April 2008

Image Speak - More Contribution and UI

Archenemy has contributed again! Thank you! This time new skins for the bear, giant spider model and new portraits! Very nice bunch of contributions. :-) The Party Behavior screen is now mostly done and working. I've started to create the player initiated encounters' preencounter group selection window now (nice name, isn't it?), it's almost ready. All in SVN. Press F2 to toggle Party Behavior screen.