|
Post by kaerar on Jun 8, 2011 0:25:28 GMT -5
One thing I would like to mention is that while Blender and Python are good playgrounds is this project looking to just remake HW in Blender or improve upon it as though it's HW2? Reason is that CryEngine3 is released in August for modding as middleware like UnrealEngine3. CE3 is far more user friendly than UE3 and the detail level it allows is far in advance (the entirety of the HW gameworld can exist in a single CE3 map). The models allowed can be made in 3DSMax and Blender with advanced lighting, physics etc... Just food for thought 
|
|
|
Post by rotary on Jun 8, 2011 8:19:26 GMT -5
First will be the Remake, basically to give better support for other platforms like Mac/Linux, and include proper networking. However most important part will be the engine enabling and running a world like HardWar. Once the engine is running properly, it should be relatively easy to build a new world. As can be seen from the file-structure, it will be able to support several worlds at once, for example the Original, HardWar 1.5 Titan's Turn, HardWar 2 - Entangled Freedom, Hardwar 2.2, name it  etc.. The nice thing is that the engine import objects 'as-they-are', so low-poly simple textured moths like in HardWar vanilla, will be seen as that. However you can also change the model to whatever you want, and include normal maps, alpha maps, several layers, enabling holes in the hull when shot at, make it high-poly, transparant, etc etc. This also counts for weapons, equipment, including its logic. Whatever you do, it will appear like that in the game. So actually to enhance the graphics, there is no need to update the engine, but just the models, and eventually a script if you want to change the AI, economy, properties, etc. As you see, it will be easy to improve the graphics or make it a HW2, but for a start the aim is to Remake first. (Actually, creating the new world will be the most fun, since it is much more visualy satisfying compared to building an engine..) So far for the aim of this project  I agree that Blender its graphics-engine is not the strongest on the market, but I'm affraid that sticking to an Open-Source product is more reliable than on, say, CE3. Especially since it will be available for everyone (including MAC/Linux users), and since (i think) many modders prefer to make life difficult (muhaha ;D) and choose for a MAC/Linux; I'm between a rock and a hard place  Not considering the scripting/logic, it would be VERY nice for the graphics, but Blender is much more within my experience-zone. I also had a quick look at UDK, but those engines are mostly focused on FPS, making advanced scripting ('outside the box') more difficult. If I have a good result of my current (logic)engine from blender, I might consider this change, because graphical-abilities are stunning of CE2/3 and UDK. BTW, Do you have any experience with these engines like CE/UDK?
|
|
|
Post by ouch on Jun 8, 2011 20:06:01 GMT -5
I started making a hardwar game back in high school in the 3drad engine. (it's old and dead now, the project I mean) but I f I were to start again today it would likely be in ogre. (opengl and directx support too) Ogre seems to have the best flexibility, power and performance out of the open source engines. Once you pair that up with the bullet physics engine, the possibilities are endless....
I've looked at the blender engine but its soooo slow, it has a hard time with a high number of polys running shaders too... But because of it's simplicity it has a fast development time. Faster than other engines designed with quick dev times in mind like 3impact. (not too bad of an graphics and physics engine really, but's really showing it's age these days)
|
|
|
Post by rotary on Jun 9, 2011 8:28:48 GMT -5
I read about a project using both Ogre and Bullet. Disadvantage is that it doesnt use python, requiring a total reprogramming in C++, although with a template in python, things become easier, and I have some experience in vb.net. I'll have a look at the possibilities, I saw some stuff of blender to Ogre (via GameKit) converting..
|
|
|
Post by kaerar on Jun 19, 2011 10:07:58 GMT -5
I have only bad experiences with UDK. Too fiddly, but CE2, I have a little bit of experience with.
Waiting for CE3 for my current project, which is space related, to get some amazing visuals as well as good physics and core mechanics. Seeing as CE3 is going to be middleware like UDK it's gonna be much easier to work with than CE2. CE2 is good for now though as it's projects can convert directly to CE3 upon it's release (allegedly).
|
|
|
Post by rotary on Jun 20, 2011 14:19:25 GMT -5
Enough with the CE2/3/UDK. That will be the next step maybe ;D Duncan has been busy with the res-extractor, and its getting better and better. At the moment I already use customized output for testing purposes (I already fly around in that world, either with night-goggles or in daylight  ). Things regarding the importing which have to be decided still are scale and information-storage, which are actually more depending on how the engine uses it. Duncan himself can tell more about this progress and the extractor. For the progress on the engine; It is currently able to import terrain and buildings. Moth's can be included relatively easily, it's just that I have to make dummies for that purpose myself, and a lot of properties have a relation, so it is difficult to build from scratch without all the models. The base for the in-game scripts is also already up and running, it's just that there's not much to do  Currently i'm busy getting the door-system running (This is also needed to decide the format of building-information). Its consisting of collision-blocks for opening a hangar, elevator or running scripts. Since I am making walkways walkable (as in really walking through it, and able to look outside) it requires some scripting and modeling for the walking. Hangars will probably be walkable also. I aim to be able to get out of your moth, walk around a bit, watch moth's enter and go, and eventually walk to a walkway-entrance for the next building. Extra rooms with other options could be addable via MOD's. Menu's can already be added on the fly, with just adding script. Of course there are also problems. The dynamic importing has it limits to the ammount of external data that can be imported (it's quite heavy on the RAM). MipMapping screwing up the menu its pixel-like view. My Blender install having issues causing major lag (60->1fps) until restart. But nothing we can get over with.. So far, so good!
|
|
|
Post by rotary on Jul 10, 2011 19:39:00 GMT -5
Didn't reply for a while, life is hitting the wheels as usual. Blender had a new version release, so I had to do some small converting. In the meanwhile I have been busy standardizing a format for config files which go with buildings, moths, worlds and profiles. It took me a while to find out what was most flexible and convenient, and I ended up with a simple format which should be good enough. I also changed some things in the approach of the files, which files contain what info. Profiles will now contain info of buildings etc, instead of the world file. I thought it would become a problem if buildings are to be destructable, since world-files are somehow a fixed set which will also be loaded by save-games. This way it is possible to MOD extra terrain into a game, which will then also be loaded by older save-games. This does NOT happen for buildings, for if I include them in that fixed set, it becomes quite tedious to find out which building to import and which not, since the fixed set can be modded. Ofcourse it will be possible to add buildings in-game, either via a MOD or via building-company or something like that.. Furthermore made some good progress in the importing of maps, buildings and hangars. Now that the format is more solid, it is easier to aim  Example of a profile-file. This file is interpreted by the engine and subsequently imports the objects according to the properties.
|
|
|
Post by rotary on Jul 18, 2011 10:03:51 GMT -5
Made some more progress on the engine. Hangars and buildings are now coupled within the game. Furthermore finished the importing of properties of buildings, hangars and moths from profiles and .cfg files. These properties are things like cargo, health, rooms, parking spots, etc. Planning for coming time is working on: - importing of persons and connection to scripts by trade (trader, pirate, leader, finance, etc) - importing of interiors and walkways. - making functional hangars (instead of dummies like now) - shaping the pathfinding - scripts for AI-trading and economic functions Added is an example of the world is it is built by a testing profile. It it started via the menu, and imported dynamically. The scales are a bit (quite!) off, since I am only testing the principles of the engine, not the accuracy of the models. The models are all dummy's ripped from res-extractor from duncan. The picture shows that it is possible to build the world of HardWar with all the modeling and scripting outside of the engine (and therefore moddable). Attachments:
|
|
|
Post by rotary on Jul 18, 2011 10:05:40 GMT -5
And a nightview (nightvision-torch, which can be mounted on the moth). Attachments:
|
|
|
Post by rotary on Jul 28, 2011 17:04:49 GMT -5
Set up the importing of properties of persons and its connection to corresponding scripts. while shaping the AI of a trader first, I will try to finish its connections to other modules, like pathfinding, financial decissions and piloting. The finance module already has the basic functions working like bestsell, closesell, bestbuy, closebuy. Currently I gave the pathfinding some shape so that it uses waypoints of a world to travel from A to B. It uses the A*-pathfinding method for that. Maybe I will use a hybrid pathfinding, which will also make use of pre-calculated paths, but as long as the high-altitude travel-ways between craters are kept simple, it won't be needed.
To make use of these travel-ways, waypoints have to be defined aside of the world-file. This will be a simple list of waypoint-names containing a corresponding crater, a position and list of connected waypoints.
Buildings also have their own scripts, which will regulate their needs for goods. This decission is currently based on a list of goods and its needs per good. Based on this it will offer goods for sale or will buy it. The pricing system is not programmed yet, but I will probably work with a default-pricing (either introduced via external file, which can introduce pre-game market, or generated by a simple 'offered vs demands'-principle). From this default price AI buildings will take their pricing, according to their needs or owner's strategy.
The biggest difficulty I am currently facing is the fact that I am trying to make persons be able to differ per person. I don't want a 'moth' to be a pirate, I want a 'person' to be a pirate. That way you can have pirate gangs owned by 1 person, or factions owned by 1 person. Act like a pirate, and see the traders dimminish, and the economy get slow. Pirate 1 faction, and see it go bankrupt. Kill many pirates, and see the market get very stable (en thus tight pricing!). However, screw up the market, or make it too difficult, and see people run to pirating/scavenging, since trading doesn't bring the wished for profits..
This decission mechanism is already partly implemented, however only very basically.
Another part of which I am not sure yet whether I should implement this is to make persons survive the destruction of their moth (eject). They could walk to the nearest building (literally), and start over from there. Either they simply enter another moth of them, or buy one, or are forced to work at the mines for a solid period where they earn a daily salary (and produce ore).
Or let persons also work in factories (so you need employees for your factories, not just build it).
Questions, questions, questions...
|
|
|
Post by duncan on Jul 29, 2011 2:10:51 GMT -5
... or have them work as a pilot for a cab company that hires them a moth... on the AI personality note, perhaps you can give each ingame personality trait (trader, scavenger, pirat, enforcer, ...) a number for the likeliness an ai pilot will resort to a certain benaviour. ...and then they can have sex and babies with mixed personalities and there will be selection and ... evolution ... 
|
|
|
Post by rotary on Jul 29, 2011 11:51:11 GMT -5
Exactly like that, except the babies and evolution  I am currently planning on making it market-dependant. A special module will evaluate the market its capital, transactions and its needs for traders, demands, suppliers, police, loansharks, etc. If all is satisfied, it's last advice will be 'pirate'  In the end it is the lack of oppurtunity that will often result in piracy. Ofcourse this will be partly made random, to make it more unpredictable. Also, when persons go bankrupt, instead of selling their assets, they could turn rogue and start a pirate faction..
|
|
|
Post by Pilot on Jul 31, 2011 14:25:43 GMT -5
Exactly like that, except the babies and evolution  I am currently planning on making it market-dependant. A special module will evaluate the market its capital, transactions and its needs for traders, demands, suppliers, police, loansharks, etc. If all is satisfied, it's last advice will be 'pirate'  In the end it is the lack of oppurtunity that will often result in piracy. Ofcourse this will be partly made random, to make it more unpredictable. Also, when persons go bankrupt, instead of selling their assets, they could turn rogue and start a pirate faction.. Maybe not start a pirate faction but decide to go pirate? Also why not have a "honesty" ranking in your AI deciders, like someone with 60% honest would try for amnesty or something would go bounty hunting? Which amnesty should be harder to get maybe 5 or so pirates?
|
|
|
Post by rotary on Aug 1, 2011 17:10:53 GMT -5
Maybe not start a pirate faction but decide to go pirate? Also why not have a "honesty" ranking in your AI deciders, like someone with 60% honest would try for amnesty or something would go bounty hunting? Which amnesty should be harder to get maybe 5 or so pirates? Honesty rating.. Sounds like good property for decission-making! Easy to introduce also. Amnesty-requirements could be compared to the current wanted-rating, unlike the current system where 1 pirate equals half a faction scrapified on the crater-floors 
|
|
|
Post by rotary on Aug 13, 2011 10:28:54 GMT -5
Got the basics of pathfinding working. It works with several predefined waypoints (come with the map) along which will be traveled. Local pathfinding (from waypoint to enter hangar-door) is not done yet, however the principle is already pretty crystalized in my mind. These waypoints make long-distance travels possible (via tunnels etc). With this in place I can continue on AI piloting, how the AI's (and the player) are actually going to steer their moths..
Once this works I will continue with the walkway-system, which will use the same pathfinding principle as the waypoint-system. Since the walkways/Cab's will be part of the decission-making of IA's (walk, fly or cab to moth-store, ore-mine, police or loanshark?), I will process this before advanced trading behaviour. Simple buy/sell-deals are already implemented, and in the end, walkways are the safest way to travel..
|
|