Title: Hangover Cure... Post by: Smurf on December 09, 2012, 01:09:43 AM I got smashed last night, so today I was otherwise unable to function so I sat on my laptop fiddling with some of my code libraries.
Before I knew it, I realised I was working on a kind of Dark Omen game! It's only 1 hangover day of coding in so far, but I thought I would share a screenshot with the old community. [attachment=1] When I first modded Dark Omen I did it for LAN parties as the battle resolution engine for a grand game of Mighty Empires, and with this I am headed in the same direction. A campaign map coupled with a fast playing RTS engine. Although not strictly a Dark Omen remake I am toying with the idea of trying out sprites so that I can have massed armies. [attachment=2] There's a full day and night cycle, although the shadows at night are not great - but I don't see that as a problem because it's too dark to fight. I intend to allow the players the choice of what time of day to start battle - with the earliest choice determining the start time and then battle ends when light is too poor to continue. [attachment=3] There's a reasonable water effect too. I'm designing the game to be playable on a reasonably cheap laptop for LAN party use but I'm not sure if this water will work well on low spec machines so there may be an alternative simple water for those players. In terms of gameplay I'll be drawing heavily on DO, although of course I won't be using the WHFB rules especially with official WHFB games in development, although I will be keeping it fantasy - and there will be Dragons :) Title: Re: Hangover Cure... Post by: Ghabry on December 09, 2012, 01:31:15 PM Smurf... I remember that name :)
You programmed this on one day? Does a hangover give some kind of super powers? Looks really good. And that must be really a very very old Laptop if you worry about performance. Title: Re: Hangover Cure... Post by: olly on December 09, 2012, 07:15:26 PM Hi Smurf- good to have you back, it all looks and sounds amazing! Can't wait to hear more and please let us know if we can be of any assistance.
:) Title: Re: Hangover Cure... Post by: Smurf on December 10, 2012, 01:41:11 AM No super power dueing hangovers unfortunately, although yes it's all one day but a lot of the code and media I already had in my archive. So you could argue that I've been at it for a year or two.
I had friends over today so I only got a couple of bits in. I just need to do towns, villages, Elven castle and flora and then it's time to start playing with units :) I've a busy week ahead - but then it's Xmas break so there's a good chance of rapid progress :) I'll post some new screen shots when the flora is in. In terms of the specifications, yes I want the entry bar pretty low. It's primary purpose is LAN gaming and these days people don't cart about full spec gaming machines - atleast my friends don't! So it's got to run well enough to run on an entry level business laptop - as I am intending to pack in quite a lot of troops into each unit that's going to create some CPU overhead already and water is computationally expensive, even with shaders, because no matter what you do you're always going to have some kind of cube or reflection mapping which means everything has to be rendered atleast twice. Ultimately the final specs will likely be decided by what computers my friends have available - and I won't know that until its finished and I know who of my friends are coming to Nerdgasm 2013 :) Title: Re: Hangover Cure... Post by: Smurf on December 10, 2012, 10:32:38 PM Tonight I did Human villages, Elven towns and an Elven castle.
Here an Elven castle stands proud in the shadow of an unassailable mountain, guarding over the surrounding villages and farms. [attachment=1] A reverse view of the same map, taken from a larger town to the South of the castle. [attachment=2] All the scenery is fractal generated based upon campaign map data, and now that I have all the settlements in I realise I will either need to take out some of the detail from the building models or I will have slightly less in each area, perhaps only 1 terrain piece per map rather than the 9 I originally intended. This will probably be necessary to get the entry level target machines I am hoping for - but I will leave it for a later stage, first I shall get everything in and running okay on my own laptop. Title: Re: Hangover Cure... Post by: Smurf on December 11, 2012, 12:03:22 AM Quickly threw in the human city before bed, thought I'd share some shots.
(http://beckyrose.com/humancity1.jpg) (http://beckyrose.com/humancity1.jpg) All settlements increase/decrease in size, by the simple expedient of deleting buildings. (http://beckyrose.com/humancity2.jpg) (http://beckyrose.com/humancity2.jpg) PS: I seem to have filled up the forum upload folder with these shots so I hosted these on my own server, I made them clickable links for full size. Title: Re: Hangover Cure... Post by: Ghabry on December 11, 2012, 10:58:17 AM Do you create all the models by yourself? (Except the extreme low resolution grass texture) I like them.
Reminds me a of the game "Mount and Blade" P.S: Upload folder problem is fixed. I always thought 20 MB is a per user setting but it was the global setting, now its 50 MB... And you get bonus points for actually using that feature, others are always uploading pics to imageshack ;) Title: Re: Hangover Cure... Post by: olly on December 11, 2012, 11:14:52 PM Lovely looking screen shots, if the combat has solid formations (like Dark Omen & unlike Mark of Chaos) then its going to be awesome!
:) (is there any chance I could reuse the scenery for original Dark Omen mods, after downgrading the graphics textures please?) http://forum.dark-omen.org/3d-scenery-models/new-3d-scenery-models-t855.0.html;msg10436#msg10436 (http://forum.dark-omen.org/3d-scenery-models/new-3d-scenery-models-t855.0.html;msg10436#msg10436) Title: Re: Hangover Cure... Post by: Smurf on December 12, 2012, 12:16:53 AM Unfortunately I cannot take much credit for the models, pretty much all you can see in these is the talent of Steve Finney of Arteria3D. I've got a lifetime subscription to use all of his 3D models which I paid for - so I can use his media in my own releases as long as I credit him.
I've adjusted the ground shader a little to increase the detail as per Ghabry's feedback. Although it may not look brilliant when at ground level the camera in the final game probably wont go that low and if it does then I will replace the textures that the ground shader uses with something else. I've been adding new settlement types tonight, a new town type, an Undead city (which needs more work), and an as yet unallocated city in a Roman style because I had the media... I've now turned my attention to performance and am rebuilding the scene to lower DIP calls ( basically a DIP call is needed for each 3d surface rendered and has a big impact on performance ). I am currently getting the code to rebuild the scene geometry and textures of all the static scenery from the result of the fractal render to reduce the number of surfaces and consequently the number of DIP calls. As a result, I cant show you anything tonight because I have no visible geometry. Instead, here's a screenshot of the undead city rendered by 3D Studio Max. [attachment=1] The city is in a Mayan style which I think works really well for Undead heroes, whilst ruins and dungeons are great for encountering roaming undead, I think the style of the Mayan buildings suites an Empire building megalomaniac Necromancer well and I can imagine him going up those steps to performing summoning rituals to build his armies. With each temple focusing a different kind of magic for different troop types. Title: Re: Hangover Cure... Post by: lordbraprus on December 12, 2012, 04:40:40 PM Wow! hi smurf, nice work; that last picture of undead city, can be "modified" and make it looks like the last level of dark omen campaing, the piramid is perfect.
And yes, it reminds to mount and blade XD. If you try out DO sprites and work, it gonna be awesome when we have the sprites with call of warhammer grapchis Title: Re: Hangover Cure... Post by: Smurf on December 15, 2012, 04:50:13 PM I've finished my work on optimising the scene geometry, I created the map below with quite a high content - probably more than would be on a single map in the final game - and my laptop is running it quite well.
In honesty though, my laptop is higher specced than what I want this game to run on, so I probably wont have this many buildings on a map in the final game as I want to give over more processing to the actual units than to the backdrop. Now that I've done this optimisation I am going to begin work on flora. I am adding these last because they need to have an alpha channel. This is quite complex to get working with the water which also uses alpha and when you have multiple alpha surfaces the 3D engine does not know what order to draw things in, so i'm going to begin work and see if we end up with individual trees and forests we can fight inside of like in Total War, or whether they will be more of a solid mass like Dark Omen forests. I am hoping for the former. Anyway, on to the screen shots from today scene. [attachment=1][attachment=2][attachment=3][attachment=4] Title: Re: Hangover Cure... Post by: olly on December 15, 2012, 11:21:03 PM interesting learning about alpha channels and would be great to fight within woods, since it's a bit tricky to do in Dark Omen, as it only provides a BTB boundary that blocks arrows (to provide cover) but bizarely can only be charged through and therefore creates normal navigation/movement issues.
These latest scenes look cool and having flora will be even better. :) Title: Re: Hangover Cure... Post by: Smurf on December 16, 2012, 01:21:47 AM Yeah alpha channels are a bit of a git on modern graphics engines to be frank, but you kinda have to lump it and get on with it. In the case of the grass i've kept it quite small as the men will be small on the map so actually I havn't had to do anything special - but I suspect the trees will change that.
[attachment=1] Here's a shot of the undead city with some grass. I'm not sure I'll keep the grass in the final game - it will at least be optional. There are two approaches to doing grass in a game, you either have truly dynamic grass and focus it around the camera, or you decorate the map and just leave it there. The second method is faster in runtime but the first method allows for denser grass in the near view. Because this is a strategy game I felt the second option was best, it's also quick to implement. The downside is that it makes generating the game level take longer - although I save the resulting 3D mesh out as an fbx model so that the next time the map is played I can just load the fbx again. However if details on the map have changed, eg: The buildings have changed, then it would need regenerating so that grass doesnt grow through the buildings because the insides of many of them are visible. Title: Re: Hangover Cure... Post by: Smurf on December 16, 2012, 02:46:15 AM Of course option 3 for grass would be preferable, which is to come up with some kind of shader. I am quite new to shaders myself, and I ruled it out for this project as that would be a lot of work for a trivial thing like grass to an RTS.
I wasn't however happy with the above, so I worked some more on it and this is the result. [attachment=1] Title: Re: Hangover Cure... Post by: olly on December 16, 2012, 12:46:00 PM very lush
:) Title: Re: Hangover Cure... Post by: Smurf on December 16, 2012, 04:51:58 PM I've nearly finished working on the trees now
[attachment=1] Title: Re: Hangover Cure... Post by: Smurf on December 16, 2012, 06:48:51 PM I've knocked up a sprite sheet generator which renders off 3D models to a sprite sheet.
This may change but currently it's 32 directional, with 8 animations each having 4 cells each. So here it is, the first sprite sheet. This one is a light infantry unit, the file is a png so I've linked it to my own server as its quite big Light Infantry Sprite Sheet (http://beckyrose.com/sprite.png) Title: Re: Hangover Cure... Post by: Smurf on December 16, 2012, 08:54:02 PM I've some work to do on the shadows - they're not meant to be cast from sprites but I'm using an old 80's technique, which I think will require me to break the sprite sheet up into individual texture files, but I might do that after loading rather than have 4000 odd images per unit type.
Here is a test with a unit of 1000 men - although there is no game logic. FPS isn't great but this is after all a laptop running maximum detail settings. In the final game I think the units will be somewhere around 50-150 or so, and each army will have 5 or so units at the campaign map level - but battles can take place with multiple armies for a theoretically unlimited number of troops in the battle - performance dependent of course. It would be really cool if my laptop could run 20000-a-side battles with the graphics reduced. I'd love to see a Dragon reigning fire down on a massed battle like that :P [attachment=1] Title: Re: Hangover Cure... Post by: Smurf on December 16, 2012, 10:18:08 PM 1000 Men casting shadows, animating, and turning with the camera :)
[attachment=1] I think I will knock it down to 16 directional rather than 32 and double the animation frames to 8 per action - because at the moment the directional facing is really smooth but the animation looks a bit shabby. More importantly, Misfits is on telly in 30 minutes and I have to sort out my satellite receiver, so this is probably the last update today. Probably. Title: Re: Hangover Cure... Post by: kilowic on December 16, 2012, 10:31:29 PM That looks great :)
Title: Re: Hangover Cure... Post by: olly on December 16, 2012, 11:00:14 PM Fantastic Sprite sheet and great to see a thousand in a regiment, casting their shadow effects.
:) Title: Re: Hangover Cure... Post by: Smurf on December 17, 2012, 01:14:34 AM Time for one more update before sleep :)
I sorted out the animations on the sprites, and made a few other changes. The men needed to be bigger for scale and I decided that required a higher texture resolution. [attachment=1] I'm quite surprised and happy at the speed the engine is moving with that many sprites onscreen and pleased that I managed to get shadows casting from a surface with alpha. Soon I will add a few more unit types and then i'm going to get them moving and fighting. Title: Re: Hangover Cure... Post by: Smurf on December 17, 2012, 10:44:10 AM A wizard stands ahead of 250 light troops, and 150 armoured men.
[attachment=1] Title: Re: Hangover Cure... Post by: Smurf on December 17, 2012, 12:11:49 PM Here's the heavy infantry.
Now I just need to sort out archers, and then figure out what i'm going to do for cavalry. [attachment=1] Title: Re: Hangover Cure... Post by: Smurf on December 17, 2012, 01:14:25 PM I'm starting to run into issues with memory allocation, in an effort to make this a 32 bit program for maximum compatibility - and also on account of the fact that I have no tools that can handle 64 bit, I've simply run out of memory. So now I am culling the flowers (a small landscaping detail I hadn't shown you) and reducing terrain detail a little - because I would rather compromise on the landscape than on the unit quantity and variety.
Title: Re: Hangover Cure... Post by: Smurf on December 17, 2012, 03:49:32 PM Well that was a frustrating glitch, but I think I have a handle on it now.
I've shaved memory from all over the place, one of the key impacts is that I have turned mip mapping off which gives the map a sort of dithered quality, so I might go the whole hog and turn on hardware dithering, or see if I can correct it on powerful computers by use of anisotropic filtering and anti-aliasing. The sprites now are 8 directional rather than 16, which is a perfectly acceptable sacrifice as 16 was smoother than needed. I have managed to keep 8 frames of animation by doing this, I've also got rid of the idle animation and now just have a single cell for that, and there are less combat animations. I've also lowered the quality of some of the scenery textures, but actually one could argue they are still too high and I could save some more there. This should allow me to squeeze in quite a few different troop types, so here's a picture of all the ones I have done so far taken during an animation test. [attachment=1] Title: Re: Hangover Cure... Post by: olly on December 17, 2012, 10:11:05 PM my girlfriend is getting jealous at the time i'm spending drooling over these screen shots -completly amazing progress!
:) Title: Re: Hangover Cure... Post by: Smurf on December 17, 2012, 11:08:20 PM hehe, yeah i'm kinda excited by the prospect of playing it myself.
Currently I am working on the 3d units. I plan to use sprites for the troops still but feature units like Dragons (yes, there will be Dragons - in a variety of colours) I want to keep in 3D. Because they are feature units I am applying a shader to them to make them look nice, nothing special just bump and specular maps to bring them up to the spec you see in modern games. Unfortunately that process isn't going well, I have had this issue before and fixed it - but today its driving me insane, my meshes are invisible! Highlighted only by their shadows! [attachment=1] The bump + specular effect should result in a model more like this... [attachment=2] Here's the same model in an earlier project without the effect (although really nice lighting) (http://sphotos-b.ak.fbcdn.net/hphotos-ak-ash4/428059_10150629244759353_1290734105_n.jpg) Although the first Dragon picture above has no mood lighting going on, the way the model reacts to the light is vastly superior, with individual scales being picked out and highlighted. This is the effect of bump and specular mapping, the picture below looks flat by comparison, especially when the light or the Dragon moves. Title: Re: Hangover Cure... Post by: Smurf on December 18, 2012, 11:31:46 AM well I've tracked down my shader bug - but fixing it is going to be a real challenge.
It's to do with resizing, when I load the meshes they are around 30-100 times too big for the scale of my game, so I resize them but there is something in the shader code which does not like this process. I've only written 1 shader myself before and don't consider myself an expert in the hlsl language or it's use! And unlike other languages which is just a matter of learning a new syntax for existing concepts - hlsl deal with different concepts to conventional programming. So this is going to be pain. So I suppose I better crack on with it then. Title: Re: Hangover Cure... Post by: Smurf on December 18, 2012, 01:07:50 PM I've drafted in help to try and crack the shader issue. In the meantime I thought I would crack on with implementing the mesh units. First up to get them in the game, and then sort out their animations.
Here's the first three, in the nearground something i've called a "Lumberer". It was a free download by the guy who did the mesh I used for the Dwarves ( in the background ). It's a kinda weird thing, and i'm toying with the idea of making it come out of the ground. In the mid-distance is a T-Rex, it may seem odd to have a dinosaur in a fantasy game, although there is precedent in AD&D, but I kinda liked how it ties in with the whole Dragon thing. This does look a bit plastic-like in that lighting without the shader on it, but hopefully that'll get fixed later. Then of course there is a Black Dragon, empirically towering over everything else. For scale, the units in the background are Dwarves to the left, on the right right are three types of Wolf, the nearest - yellowy brown ones - are Giant Wolves. [attachment=1] Title: Re: Hangover Cure... Post by: Smurf on December 18, 2012, 01:41:36 PM Dragons are not the only large creature in the game, and much like their winged counterparts Hydra also come in a variety of colours, as the tallest unit in the game hydra pose an intimidating presence on the battlefield, but a Dragon would make short work of one.
The Giant Bat is a great scouting unit, and if a player maintains a hatchery of them could be used to swarm opposing units to keep them busy. The Giant Serpent is a very scary adversary with its poisoned bite, but could easily be swarmed over by a large unit. Try to deploy it against small units, heroes, and wizards for best effect. [attachment=1] Title: Re: Hangover Cure... Post by: Smurf on December 18, 2012, 01:50:38 PM OK I've gotten to the bottom of the shader issue and its bad news.
There's a bug in the 3D engine I am using on my particular implementation. It's fine when used with other languages, but there is a conflict in some of the commands when using it with the language I use. This creates an issue I am unlikely to solve with reasonable effort - and this is a hobby... So I will not be using shaders on the mesh units. There are shaders in the game, but they are on static elements like the water and the landscape, it's moving and scaling things that seems to cause the issue. I don't think a fix is likely any time soon as the developers disappeared back in March, so for now I shall soldier on without them - and i'll consider either a new engine or a new language for my next project. Even worse, without shaders I cannot do some of the special skin effects I had planned for some of these units, so there will be a greatly reduced number of Dragons and other large monsters in the final game. No "glass" or "ethereal" dragons and hydra, and the awesome gold dragon will just be a dull matted yellow colour instead... Bah. Title: Re: Hangover Cure... Post by: Smurf on December 18, 2012, 02:07:00 PM This is what they would have looked like, taken from a tester project when I was experimenting with the technique.
(http://sphotos-b.ak.fbcdn.net/hphotos-ak-snc7/423029_10150631092439353_1165259484_n.jpg) Glass Hydra (http://sphotos-h.ak.fbcdn.net/hphotos-ak-ash4/432173_10150631802599353_122094260_n.jpg) Gold Dragon Title: Re: Hangover Cure... Post by: Smurf on December 18, 2012, 03:47:48 PM Breakthrough! Animation working on the mesh units!
Slideshow (http://www.youtube.com/watch?v=LEP4zW9ZrRw&feature=youtu.be#) Now to begin work on the game logic and start to get all these guys moving around. Title: Re: Hangover Cure... Post by: olly on December 18, 2012, 06:50:29 PM Outstanding! I Can't wait to play this game and slay some 3d monsters.
:) ps. I have sent you a PM with some thoughts Title: Re: Hangover Cure... Post by: Smurf on December 18, 2012, 07:38:01 PM Some weird shiznit is going down with my PM sending, so i'll paste my reply here.
I'm quite happy to discuss this openly anyway, I hope you are as i'm pasting my reply I had considered modding, and certainly I was considering whether to use a d120 system because it is divisible by all the standard dice sizes, with stats up to 100 - again, divisible by Warhammer's 10. The good news is, in terms of rules they are inherently not copyrightable, there just isn't a way to do so legally. What is not legal is to copy the flavour, for instance - when Stuart Marshall re-released Advanced Dungeons & Dragons 1st Edition as OSRIC he did so with the rules very much intact, but with all of Gary's wayward flouncy writing completely removed. Although he isn't allowed to say so legally, Gary Gygax even helped him to clear up some of the questionable rules to boot, although I dont suppose Iain Livingstone or Jervis Johnson would afford me the same kindness! The downside is that I neither know nor care much for the warhammer rules, infact the final game is being designed for a very specific purpose. I want to host a LAN party with my friends and have a big Mighty Empires style campaign - you'd be invited of course! We did it once before many years ago using Dark Omen for the battles, which is what spawned my hacking of the DO game to get the big units and more gold etc. The new game is being designed specifically for that purpose, a large scale campaign playable by half a dozen people with rapidly resolved battles, completable within about 6-8 hours play. With this in mind the magic will likely revolve around what I can achieve with shader and particle systems - especially in light of the bug I found in the shader system. They wont be from a warhammer spells list and neither would a warhammer spell list be very useful against such large armies. Warhammer is a slow playing tactical game designed for skirmish sized battles, and this is a mass ranks epic battle game designed for rapid resolution - a sort of high fantasy version of the Space Marine game. So yes there will be parallels, and it should be possible to mod the game and get quite close to warhammer - but there will be differences, not least will be the acceptance that mages in this game need to be significantly more powerful than in Warhammer, because they need to take on units of 500 men rather than 20. Single handedly! Once I have achieved my purpose I will see about making any modifications necessary to help you mod the game. I will also be doing something or other to get it out on some kind of public release - the focus for the first instance though is for the LAN party. Title: Re: Hangover Cure... Post by: olly on December 18, 2012, 08:00:13 PM very interesting reading/info, what a great plan/vision, all sounds fantastic to me!
Thanks :) Title: Re: Hangover Cure... Post by: Smurf on December 18, 2012, 09:17:13 PM In terms of the campaign game, think Mighty Empires - which of course was originally designed for Warhammer campaigns, specifically the early version that also worked as a stand-alone game. I think I will simplify it for the games first outing, but hopefully I will be able to gradually add in the various features of the campaign game.
The battle maps have been designed such that when they are generated the edges of the map take their influence from surrounding tiles. So a campaign map tile that has mountains to the East will generate a battle map with a similar edge. I may add a little more resource management in than the board game has and introduce trade routes, as thats a bit beyond the scope of a board game but could add an interesting strategic element, especially during sieges. Title: Re: Hangover Cure... Post by: Smurf on December 18, 2012, 11:10:31 PM When it came to waypoint markers, there was only one thing I could possibly choose!
[attachment=1] Title: Re: Hangover Cure... Post by: Smurf on December 19, 2012, 01:32:48 AM I have my sprite based units marching across the map now. The units rotate and march according to their waypoint chain. Upto 10 waypoints are visible via the white flags, although technically you can give an unlimited amount of orders - well, until the computer crashes from a lack of memory anyway!
[attachment=1] There are several ways to do rotation in this type of game, I opted for a simple and easy to calculate method for speed, as the game needs to deal with a lot of units I didnt want to blow a lot of CPU time on unit rotations and path finding, so a soldier on the left stays on the left during a rotation even if it is 180 degrees, and then walks directly to their individual waypoint. [attachment=2] The responsiveness of the unit to orders, and their ability to quickly execute their chain of orders, relates heavily upon the units leadership stat skill. Units with poor leaders also have a tendancy to march out of step with each other and look a little disorganised on the field of battle as they march. Currently the movement routine is a little slow and this has impacted fps quite heavily, but I already know why and what I plan to do about it - I have a bit of slow code in there to calculate the altitude of the ground under the player but I am going to write a proper routine for it that will be much optimised and faster. What I havnt figured out is what to do about the units walking through buildings. Especially if their final waypoint is inside a building. This requires some thought as to the best approach of what to do about it and may require some sleeping on it. Title: Re: Hangover Cure... Post by: Smurf on December 19, 2012, 10:08:57 AM I have a bit of refactoring to do so I thought I would upload the game to my SVN in case I want to go back... Anyway, it turns out I have used up well over 2.5gb of space already! So I guess this commit will take a while :)
I have the morning off then, time to get some paperwork sorted! Title: Re: Hangover Cure... Post by: Smurf on December 19, 2012, 05:05:21 PM Ever wondered what it would look like to see a unit of 1000 amazon warrior women cartwheeling into position?
[attachment=1] It's taken me all day to get my new code working to read off the ground height under the units quickly, it was much more complex than I at first imagined - but I think I am there. I turned shadows off for this test, i'm trying to stress test my new routine and wanted some FPS - but I didnt expect it to hit the 30-40fps range with all those units onscreen! Now, I wonder if it will do 5000... Edit: Dammit. More work to do! Title: Re: Hangover Cure... Post by: olly on December 19, 2012, 06:04:33 PM impressive to see 1000, can't imagine 5000!
:) Title: Re: Hangover Cure... Post by: Smurf on December 19, 2012, 06:32:41 PM Well imagine no more!
First off, here is 3000 highly disciplined Amazonian warrior women [attachment=1] And here's 5000 badly behaved ones :P [attachment=2] And if you give me 10 minutes to upload, i'll edit this post and add a video too :P 5000 Unit Movement Test (http://www.youtube.com/watch?v=RokyM0IyjyY&feature=youtu.be#) Title: Re: Hangover Cure... Post by: Smurf on December 19, 2012, 07:14:32 PM The next thing I need to figure out is how to get the units to move around buildings and trees. I don't particularly want to write a full path finding algorythm firstly because it'll be an fps hit, and secondly because the map isn't a complex maze, there are just some obstructions. I also need to get the units to not march up a hill if it is too steep, so I am thinking of combining the two problems into one and faking the height map.
That would sort out detection of obstructions with no system overhead as it uses an existing system, but the logic of what should happen next is something I need to find an answer for. Title: Re: Hangover Cure... Post by: olly on December 19, 2012, 07:34:29 PM " I Fear the Enemy" is what i would say, seeing 5000 advancing!
:) Title: Re: Hangover Cure... Post by: Smurf on December 19, 2012, 08:09:15 PM Hah. I had that happen to me back when I did Viking re-enactment, at the biggest battle I ever took part in and I saw 300 soldiers walking out opposite and I could have let my bladder fail right there and then, and if 20000 spectators were not watching me I would have too.
The person next to me asked, "Have you seen our line?" - I stepped forward so I could look it up and down, and returned to my spot thinking, "This is epic!". Then when battle commenced, of all the re-enactment I ever did, never did I ever die as fast as that day! -*- I really would like to be able to handle 10000+ soldiers on a side but I think the reality is that by the time the game is complete we'll probably be looking at 2000 on the battlefield in a big battle during the campaign setting given the low system requirements of my target machinery. As mentioned earlier though the game will be moddable and with the graphics being quite customisable in theory it should be possible to play very large epic battles. The work I did today should allow me to de-couple the units on to their own threads for multi-core support, and that will have a big positive impact on performance. -*- We need a name... Have you any suggestions? Title: Re: Hangover Cure... Post by: Smurf on December 20, 2012, 06:03:45 PM I would not call the combat anywhere near finished, but there be death!
[attachment=1] Title: Re: Hangover Cure... Post by: Smurf on December 20, 2012, 08:18:07 PM [attachment=1]
[attachment=2] [attachment=3] [attachment=4] Title: Re: Hangover Cure... Post by: Smurf on December 20, 2012, 08:19:18 PM [attachment=1]
Still lots more to do, but the behaviour of the units is about 70% of the way there, for melee anyway. I havn't started ranged or special attacks yet. Title: Re: Hangover Cure... Post by: olly on December 20, 2012, 11:14:32 PM The latest screen shots of melee are truely outstanding, I can't wait to play!
:) (have been thinking of a few names but it's harder than I thought to find original names that sound right and describe the game) Tactics of War Division of Power Fighting Factions Title: Re: Hangover Cure... Post by: Smurf on December 20, 2012, 11:29:35 PM The best hit so far is Tactics of War, although I think tactics is wrong. I want something that makes it feel truly epic - I was thinking along the lines of "Epic Battles". But "Epic War" might be better, although I like the sound of the "of War", maybe Epic Battles of War.
Although these are all generic, perhaps we need a story for the campaign that might give it a theme, and the name might derive from that. EDIT: Legions of War ? Title: Re: Hangover Cure... Post by: Smurf on December 20, 2012, 11:45:43 PM Melee is done, just starting to work on the monsters.
Test Battle (http://www.youtube.com/watch?v=pZ-GkwOBUGo&feature=youtu.be#) Title: Re: Hangover Cure... Post by: olly on December 21, 2012, 12:39:03 AM Nice Vid. How can I sleep tonight thinking of " What was, what will be, and what is" as all so fantastic!
:) Title: Re: Hangover Cure... Post by: Smurf on December 21, 2012, 12:41:53 AM Well don't go to be yet, i'm uploading a night battle of Dwarves versus Skeletons! :P
EDIT: But in fairness, that will be 30 minutes uploading apparently... Title: Re: Hangover Cure... Post by: olly on December 21, 2012, 12:47:09 AM I will certainly hang on for that, sounds cool.
:) Title: Re: Hangover Cure... Post by: Smurf on December 21, 2012, 12:56:28 AM Night Battle - Dwarves versus Skeletons (http://www.youtube.com/watch?v=wk79tB2Dsuw&feature=youtu.be#)
Title: Re: Hangover Cure... Post by: olly on December 21, 2012, 01:09:33 AM Now that was worth staying up for, thank you. Totally awesome day/night effects and seeing the skeleton warriors appearing over the hill looked wicked. Was great fully zoomed into the melee and I will dream well tonight of this game.
:) Title: Re: Hangover Cure... Post by: hari8 on December 21, 2012, 01:38:50 AM Crush them! :D
Very nice work, cant post this all the time i read here :D Title: Re: Hangover Cure... Post by: Smurf on December 21, 2012, 01:11:42 PM Thanks guys.
I'm having a bit of a mare today, I've been integrating multi-core support. The speed boost is quite large and it was well worth doing but I spent the last 4 hours repeatedly rewriting the way I handle dead soldiers until I got it right! I think i'm about coded out and am starting to make silly errors, and I had best get some Xmas shopping done so I'm taking a break. Before I leave though, here is an epic battle of 700 Dwarves fighting 1000 Skeletons. It does not take full advantage of my laptop because there are only 2 units in this battle, and each unit goes to its own thread with a third being used for graphics, if this was broken up in to units of 100 it would probably have run a lot faster, but it was still adequate given I was on full graphics. I think in the final game units will be up to about 200 or so - although there may be the occasional exception. Of course if you mod the game you can specify any size you like as long as your computer can handle it - but units over 200 start to become ungainly to operate in such a fast playing battlefield, especially if you have a low leadership score in your unit. Epic Battle (http://www.youtube.com/watch?v=NF3DEWcdxwQ&feature=youtu.be#) Title: Re: Hangover Cure... Post by: olly on December 21, 2012, 10:52:11 PM enlightening about the multi-core support and loving the battle. What language are you coding in and any other tech specs, as interesting to learn the different stages of creation (only if u have time, as don't want to slow the rapid progress)
:) Title: Re: Hangover Cure... Post by: Smurf on December 22, 2012, 01:14:10 AM Well the rapid progress has been somewhere hindered by a memory access violation somewhere in the threading system, and seeing as you asked - let me go put the kettle on and I'll impart some weary wisdom from the world of multi-threading - which will probably suggest you spare your sanity and never try it.
Right coffee in hand... Multi-threading is the devil. And frustratingly this game needs it, because there's a lot of logic that needs processing to have lots of units. The biggest issue with doing multi-threading on the Windows platform is that only the main thread can talk to the graphics. So all the 3D stuff has to be done on the main thread. This means the other threads are doing game logic, which in this game is the decision making engine that makes the soldiers run around in accordance with their orders. The heaviest part of that calculation is when the soldier has to be positioned in 3D space, I do this entirely in maths from a memory bank that holds topography data for the map. Because the topography data only has reference points every n units of space in the 3D world I have to do a calculation that works out the height at a given co-ordinate between the neighbouring reference points, rather than raycasting in 3D which is both slow and can only be done on the main thread. There's also a lot of range calculations involved in the logic of the decision tree, and that involves some power of and square route maths, as well as some 2D movement over the terrain surface which involves some cosine and sine maths. Basically, range = sqrt( (destination.x-source.x)^2 + (destination.z=source.z)^2 ) x = x + cos( facing ) * speed z = z - sin( facing ) * speed So basically there's a lot of maths to do which aren't direct 3D operations, which is why this game benefits a lot from threads. I am toying with the idea of pre-caching some of those sums, ie: having a databank of cos results. The problem with threads is that if one part of the software is writing some data whilst another thread reads it then the software crashes - and because this is parallel processing you have little control over when events happen. To combat this there are a number of approaches, the first thing I did was create a working copy of the data in use, so that the render just works with a final output of a few key pieces of information, specifically: A boolean true/false flag for each soldier that gets switched to true when it is time to render. An x, y and z position A bearing for the units direction And the current animation sequence and frame Basically the threads get all of this information ready and then set the boolean flag to true, the rendering thread then draws it and sets the flag to false. Once the flag is false the thread processing that unit will then reconsider the logic for that soldier. In addition - because of the current crashing problem - I do something called mutex locking on the threads which creates a "pause" for processing of a unit whilst that unit is in it's rendering cycle, so that the rendering cycle and the logic cycle for a given unit never occur at the same time. I dislike mutex locks as they hinder the performance benefits of using threads, and in this case they don't seem to have fixed anything so they might not stay, but they're here for now. Now somewhere in this flawless logic is a floor, and this is the bug I am trying to stomp right now :) The difficult part is that when a crash occurs from within a thread you get absolutely no debug information at all, and when I run the software outside of a thread the crash never occurs. So debugging is done by a process of trial and error. Which is bloody painful. -*- As for tools, I am using the Xors 3D engine which is a DX9 engine. I use this because it is very similar to engines with which I was already familiar from "back in the day" but has the addition of shader support and DX9 features, I have a shader which drives the landscape texture which I wrote myself ( technically: A 7 way splat shader that does not use alpha channel thus maintaining shadow support) - and a couple of shaders on the water which was public domain code. I compile in BlitzMax/GCC which is a superb combination for rapid development, it'll compile multiple platforms and multiple languages but its own language constructs make for easy and rapid development and I use them almost exclusively. However, because the 3D engine I am using is DirectX this particular game will be Windows only. Title: Re: Hangover Cure... Post by: Smurf on December 22, 2012, 01:52:43 AM Right, seems my problem debugging threads turns out to be a bug in my compiler. Luckily it's open source and actually compiles itself (which is a brainfuck in itself), and people have posted various solutions so I'm trying them out and seeing what this new level of debug information turns up.
Title: Re: Hangover Cure... Post by: Smurf on December 22, 2012, 02:35:02 AM Well that's typical, made the changes to my debugger code files, recompiled, then saw the problem and fixed it without needing the debugger.
*rolls eyes* I think i'm going to go to bed before I find another bug! Title: Re: Hangover Cure... Post by: Smurf on December 22, 2012, 01:31:03 PM Well the good news is I managed to get rid of the mutexes on the rendering thread, so the only mutexes now are in relation to mouse clicks and the unit processing logic.
And there's more good news, I am about to begin work on the mesh units and their special attacks :P I just have to fix their navigation first as they seem to never march through their list of waypoints, and then it's time to get their special moves in :). Title: Re: Hangover Cure... Post by: Smurf on December 22, 2012, 03:28:43 PM Figuring out the behaviour of flying units, here's the first implementation
Flying Units - Early Implementation (http://www.youtube.com/watch?v=F56gLs4u1eA&feature=youtu.be#) Off shopping soon, so will be a slow day. Title: Re: Hangover Cure... Post by: Smurf on December 22, 2012, 04:31:15 PM Getting there
[attachment=1] [attachment=2] [attachment=3] [attachment=4] Title: Re: Hangover Cure... Post by: olly on December 22, 2012, 07:24:24 PM Sounds very complicated but really appreciate the overview of the engine and required logic and maths. The flying units are also looking fantastic.
:) Title: Re: Hangover Cure... Post by: Smurf on December 22, 2012, 08:34:29 PM Made good progress on the monsters tonight, but I'm taking a break. I feel the need to vegetablise myself infront of the telly for a few hours :)
Title: Re: Hangover Cure... Post by: Smurf on December 23, 2012, 01:50:06 AM Beginnings of a UI
[attachment=1] The Dragon has two special moves, to fly and its breath weapon, these are controlled by a "dragoncharge" indicator, a kind of mana bar if you like that forms part of the portrait. Of course those buttons don't actually work yet, that's for tomorrow :). Title: Re: Hangover Cure... Post by: Smurf on December 23, 2012, 02:05:57 PM Work in progress, but I've begun the breath weapons :)
[attachment=1] Title: Re: Hangover Cure... Post by: olly on December 23, 2012, 02:24:38 PM Cool!
:) Title: Re: Hangover Cure... Post by: Smurf on December 24, 2012, 12:08:43 AM OK so, I've done the black dragon which fires off a bilious green cloud of poison, and I'm about a third done on the red dragon which breathes fire.
The question is, what should these dragons breath: Gold Brown Green Blue AD&D gives some inspiration, but we need not follow that: Blue - lightning Green - acid Gold - fire / weakening gas Brown - acid (line not aoe) In this game all the dragon breaths need to be AOE for gameplay reasons. It kinda works at the moment, that as the player you get to fire off the breath weapon with two choices of attack (left/right mouse buttons) to try and catch as many soldiers as possible - and if you fail you get overwhelmed by troops and whittled down. I like the idea of having a cold attack, so blue could be cold. Although i'm not sure how to represent it graphically yet. Green being acid is fine. But that leaves Gold and Brown. Title: Re: Hangover Cure... Post by: olly on December 24, 2012, 12:43:34 AM Gold could be utlimate dragon and have combined weapons such as flame and ice, since I would like to see lightning effects kept for blue dragon.
Brown could be putrid stomach contents to demoralise the enemy (-2 on Leadership and movement), generated by sucking on the corpses of the dead. Title: Re: Hangover Cure... Post by: Smurf on December 24, 2012, 03:00:44 AM Gold could be utlimate dragon and have combined weapons such as flame and ice, since I would like to see lightning effects kept for blue dragon. I quite like the idea of the Gold dragons attack being indirect, a kind of buff/debuff character. Perhaps it could resurrect fallen soldiers with its breath weapon. That would make it very powerful but at the same time it would be less capable in its own right.Brown could be putrid stomach contents to demoralise the enemy (-2 on Leadership and movement), generated by sucking on the corpses of the dead. If I do lightning I'll need to move cold onto another dragon, perhaps black - and move it's poison onto Brown. That leaves green as acid. I'm not sure how I'll tackle these things graphically yet. Lightning is certainly a challenge, I can't just plug it in to the particle system I wrote today, it'll need something new. Title: Re: Hangover Cure... Post by: Smurf on December 24, 2012, 03:06:23 AM Or as it is green the poison cloud could goto the green leaving brown free.
I'm not sure a leadership change debuff would help much in gameplay terms at the moment. Dragons get easily overwhelmed against units of 300 soldiers so a dragon that munches the dead would be problematical in a gameplay sense. It needs to strike hard and fast with aoe. Perhaps it could fire off a paralysing stomach juice that ensnares those within for some time - thus crowd controlling the mass of melee it faces. Title: Re: Hangover Cure... Post by: Wardner on December 24, 2012, 01:42:55 PM Awesome work, keep it up please
Title: Re: Hangover Cure... Post by: Smurf on December 28, 2012, 12:42:06 PM Well Christmas is over, and real life will necessitate a reduction in development speed as I go back to that thankless task of earning enough money to feed myself. However, I am keen to continue development and keep moving the game forward.
Currently I am working on the flying units, whilst the main artist for the game Steven Finney at Arteria 3D is reworking some 3D meshes for me so that I can get the cavalry and more unit types in as the game still needs more archers, cavalry, and some Elves. So work is moving forward, but the pace will be slower now. The dragons are a bit broken in flying mode at the moment, well I say broken like it once worked - I am developing it. Hopefully I'll have that sorted by the weekend and if so then next week I should be able to start work on the cavalry if all goes to plan. Title: Re: Hangover Cure... Post by: Smurf on December 31, 2012, 06:45:44 PM I've been so utterly unable to make progress on the flying that I took yesterday out to play a game of Civilisation. Now that the Greeks and Japanese are finally defeated I am back on it again trying to get to the bottom of an issue I have created in the flight logic.
Title: Re: Hangover Cure... Post by: olly on December 31, 2012, 07:13:21 PM :)
Title: Re: Hangover Cure... Post by: Smurf on December 31, 2012, 08:43:21 PM I've got the Dragon flying around and banking and stuff like that, now i'm working on the combat. The dragons flying attack involves swooping down and grabbing soldiers in its rear claws, then dropping them. That's a work in progress at the moment :P After that I need to get the breath working working whilst airbourne too and then dying - and then, finally, the Black Dragon will be ready to show you - before I go and do all the other breath weapons!
Title: Re: Hangover Cure... Post by: Smurf on December 31, 2012, 08:53:35 PM I've got as far as grabbing the units but I need to do some extensive testing to make sure it isn't crashing. The Dragon has a habbit of flying around in circles too so I need to do some work on the AI.
[attachment=1] Title: Re: Hangover Cure... Post by: olly on December 31, 2012, 09:23:03 PM Now that is cool!
:) Title: Re: Hangover Cure... Post by: Smurf on January 01, 2013, 01:35:33 AM Here's a little video of a Black Dragon single handedly taking on a Dwarven army. The game sadly crashed on this test, something in the Dragon code isn't quite right yet. There is still a few more features to add too, but I need to get to the bottom of the crashing first.
However, as you can see the Dragon battles are really beginning to take shape. They're very mobile fights too, the Dragons flying around at high speed causes the unit to reposition itself - I wrote a special AI for fighting against a flying Dragon and I think it's quite cool to watch. Although with melee weapons, the Dragon could wipe out a 1000 Dwarves and loose less than 20 odd hitpoints! But ranged units will be on the agenda before too much longer :) Black Dragon versus Dwarves (http://www.youtube.com/watch?v=p4ZOD7For8o&feature=youtu.be#) Title: Re: Hangover Cure... Post by: Smurf on January 01, 2013, 02:13:52 PM This is absolutely the last time I use mutexes in a multi-threaded application! I'm stuck with a mutex crash that's on day 2 of debugging!
Title: Re: Hangover Cure... Post by: Smurf on January 01, 2013, 04:11:51 PM Turns out there was more than 1 crash bug, when I realised that I began to make progress. I don't think I've got it right yet but the code is a lot more stable.
[attachment=1] [attachment=2] EDIT: Found the last bug and zapped it. Now for the breath weapon whilst flying :) Title: Re: Hangover Cure... Post by: Smurf on January 01, 2013, 06:02:45 PM [attachment=1]
Tada! Title: Re: Hangover Cure... Post by: olly on January 01, 2013, 06:22:59 PM Glorious!
:) Title: Re: Hangover Cure... Post by: Smurf on January 01, 2013, 07:52:03 PM Hell yeah! Flying is done.
The next task will be the other 5 breath weapons. I've already made a start on the fire dragon so i'll do that next. I'll see if I can get the men to run screaming across the map once they catch light :) Title: Re: Hangover Cure... Post by: Smurf on January 01, 2013, 11:35:26 PM fire weapon is in, here you can see it after the fact - as a unit of Amazon women runs screaming and aflame to the ultimate deaths.
The red dragon is much smaller and more nimble than the black dragon, making it much more useful in the air - but substantially weaker when on the ground. [attachment=1] Title: Re: Hangover Cure... Post by: Smurf on January 01, 2013, 11:42:08 PM Some more red dragon shots
[attachment=1] [attachment=2] Title: Re: Hangover Cure... Post by: olly on January 01, 2013, 11:48:09 PM Nice to see the enemy running on fire
:) Title: Re: Hangover Cure... Post by: Smurf on January 02, 2013, 12:36:03 AM Yeah that's pretty cool, although the effect isnt as obvious as it was in Dark Omen because of the scale - but it's cool anyway. I was worried that neither the AI or the particle emiter system would cope, but with some small tweaks to the emiters it just worked so I was very happy with that. It's nice when something works and doesn't cause mutex related crashes!
The only downside is that the effect creates quite a lot of particles onscreen and these render quite slow, so the frame rate can drop for a couple of seconds when the fire breath impacts on a large unit. Title: Re: Hangover Cure... Post by: Smurf on January 03, 2013, 01:17:11 AM What is currently a blue dragon, but will probably be the breath weapon of a white dragon once I've created a texture for it, breathes a cold blast down on a unit of Amazonian warrior women, freezing them on the spot.
[attachment=1] Title: Re: Hangover Cure... Post by: olly on January 03, 2013, 08:49:13 PM "Very Cool indeed!" (no pun intended)
:) Title: Re: Hangover Cure... Post by: Smurf on January 03, 2013, 10:40:42 PM Green Dragon is done, it fires balls of acid that bounce and break up into smaller balls. No screenshot though because it is the most minimal of the breath weapons visually, and you have to see it moving to understand the effect.
I'm just working on an ultra-rare secret Dragon that you'll have to discover in game - and then it's time for the Gold Dragon whome i'm going to give the lightning zap to, I'm not going to do a white dragon so blue is staying as cold. Title: Re: Hangover Cure... Post by: Smurf on January 05, 2013, 03:45:40 PM [attachment=1]
Such an electric shot! Title: Re: Hangover Cure... Post by: Smurf on January 05, 2013, 05:20:54 PM Feeding time at the zoo!
[attachment=1] Several varieties of bat and raptor now exist. There isn't much difference between them except that different colours are larger with better stats. The raptors cast an imposing presence on the battlefield, and a unit of 10 can easily take out 200 skeletons, but is likely to fall quickly when overwhelmed by multiple units. Bats are fast and can occupy a Dragon for long periods whilst you take the Dragon down with archers, but otherwise are much weaker than raptors as units go. Raptors are essentially the equivalent of heavy infantry, but bats being flying units would be weaker against archers once I code that in because against arrows they would not get their altitude bonus. Title: Re: Hangover Cure... Post by: Smurf on January 05, 2013, 06:16:09 PM [attachment=1]
There are 4 types of guivre, they're all the same size and have the same stats but are unique by their attack type: Poison; Fire; Electricity; and Acid. Each guivre is immune to its own attack type too, making them immune to some spell effects. Title: Re: Hangover Cure... Post by: olly on January 05, 2013, 09:47:42 PM Loving the new creatures!
:) Title: Re: Hangover Cure... Post by: Smurf on January 06, 2013, 05:38:57 PM I got the archery AI in today, I still need a few more archer sprites and cavalry but the only thing outstanding on the battle engine after that is the Hydra, siege engines (which I dont have models for atm), user interface, loading optimisations and figuring out some way of getting the units to walk around buildings.
EDIT: Oh yeah, and multi-player (which is what is most likely to break the epic scale of the battles atm!) Title: Re: Hangover Cure... Post by: Smurf on January 06, 2013, 05:57:12 PM I really must sort out a proper video codec, but in the meantime, here's some action
Archers versus Undead + Dragon (http://www.youtube.com/watch?v=MKuNV_2279c&feature=youtu.be#) Title: Re: Hangover Cure... Post by: olly on January 06, 2013, 06:39:36 PM Dragon Devastation!
:) Title: Re: Hangover Cure... Post by: Smurf on January 06, 2013, 07:52:09 PM I've been looking at system builds to get another PC so I can code the multiplayer easier, and it seems to me that I can get a laptop of comparable spec to what I have (marginally slightly better owing to the passage of time) for about £450, so I figured surely I could get a desktop for much less. Especially as for my next project I want to use my 3D telly so I don't need a monitor.
Yet for some reason by the time I put 2gb graphics RAM and four cores of CPU into it then the cost goes up to about £600 or so. I can't fathom it out, are laptops really cheaper nowadays? Title: Re: Hangover Cure... Post by: olly on January 06, 2013, 08:22:01 PM Looks that way. The best i can find is a Dell Inspiron Desktop 660 Slim Tower Base, with an Intel® Core™ i5-3450S Processor (6M Cache, 2.80 GHz) with 4096MB (1x4096) 1600MHz DDR3, 1TB Serial ATA (7.200 Rpm) Hard Drive but with Intel HD graphics (can play Sims but not high end BF3 FPS etc) for £429.00 and then add Nvidia GT 630 with 4GB RAM for another £60.32 = Total = £490 and better than any laptop for same price, although due to slim chasis will have to check graphics card fits.
http://configure.euro.dell.com/dellstore/config.aspx?oc=d0066s13&model_id=inspiron-660s&c=uk&l=en&s=dhs&cs=ukdhs1 (http://configure.euro.dell.com/dellstore/config.aspx?oc=d0066s13&model_id=inspiron-660s&c=uk&l=en&s=dhs&cs=ukdhs1) http://www.amazon.co.uk/MSI-GeForce-GT630-Nvidia-Graphics/dp/B00896KEXU (http://www.amazon.co.uk/MSI-GeForce-GT630-Nvidia-Graphics/dp/B00896KEXU) or the classic of having to spend a little bit more to future proof, such as this Dell XPS 8500 Standard Base with 3rd gen Intel® Core™ i7-3770 Processor (3.40GHz, 8MB), 8192MB (2x4GB) 1600MHz DDR3 Dual Channel Memory for £649.00 and then sitck in that Nvidia GT 630 with 4GB for another £60 = £700 http://configure.euro.dell.com/dellstore/config.aspx?oc=d00x8510&model_id=xps-8500&c=uk&l=en&s=dhs&cs=ukdhs1 (http://configure.euro.dell.com/dellstore/config.aspx?oc=d00x8510&model_id=xps-8500&c=uk&l=en&s=dhs&cs=ukdhs1) Title: Re: Hangover Cure... Post by: Smurf on January 06, 2013, 10:15:31 PM Well I almost found one, reasonable in all regards except cores - but when you put in an i5 for the quad-coriness suddenly you see where the savings are made :)
http://www.saveonlaptops.co.uk/Packard_Bell_iMedia_S_1216201.html (http://www.saveonlaptops.co.uk/Packard_Bell_iMedia_S_1216201.html) Title: Re: Hangover Cure... Post by: Kyjja on January 07, 2013, 07:04:11 PM Well... are you looking for a desktop or a laptop ? How will you use it ? Games, Video encoding... ?
How much money would you put in this computer ? Title: Re: Hangover Cure... Post by: Smurf on January 07, 2013, 08:44:48 PM Well... are you looking for a desktop or a laptop ? How will you use it ? Games, Video encoding... ? All those things are variable, depending upon my mood - but what I have done is put together a self build which comes in at £454 including OS and delivery and is pretty kick ass for the cost. I have a few SATA hard drives to extend the storage so that wasn't an issue. I dont care that they aren't SATA III because the OS and browsers etc will be on an SSD.How much money would you put in this computer ? It's capable of true 3D and meets my requirements of 2gb graphics ram, 8gb ram, and quad core - actually a stunning 4.2ghz per core which I was quite surprised about, but given it's AMD I would not be surprised if it's actually nearer 2.8 :P. But the benchmark tests compared it reasonably well to a good i7, and way better on bang per buck. Kitlist: AMD Bulldozer FX-4170 4.2GHz Quad Core Processor 2xTranscend Jet Ram 4GB Memory Module PC3-10600 1333MHz DDR3 SDRAM Gigabyte GA-78LMT-USB3 Motherboard Phenom II AMD Athlon II Socket AM3 AMD 760G Micro ATX RAID Gigabit Ethernet (rev. 4.1) 64GB Crucial v4 2.5" Solid State Drive ZOTAC GeForce GTX 650 (2GB) Graphics Card Ace 650W BR Black PSU Microsoft Windows 8 (64-bit) English International (DVD) OEM Arctic Cooling Freezer 7 Pro Quiet (Rev 2) Samsung 24x Internal DVD Writer CiT Saturn Midi Tower Case Now I just need some pliers or a hexdrive for the motherboard mounts... And I think i'll pickup a wireless keyboard and mouse (I hate them, but where its going it'll be more useful with wireless) if I've still got money at the end of the month. I could have gotten away with an old case, but for £20 the new one looks a lot nicer and as it's going to sit next to my TV in the lounge so I'd rather spend the £20. Unfortunately my old DVD drive as IDE which is just too old hat now. With these specs it will probably take over as my main development machine and relegate my laptop to the role it should be in - that of a laptop! Title: Re: Hangover Cure... Post by: olly on January 07, 2013, 09:58:48 PM Nice specs, especially for only £454!
:) Title: Re: Hangover Cure... Post by: Smurf on January 07, 2013, 10:30:49 PM aye :) I'm quite excited.
I dont much fancy the work of building it but doing so does save a few hundred quid - and yes, for that kind of money I do get out of bed :P What this means is after some build and tinker time and maybe a 3D game of some kind to test it out, I can begin work on the multiplayer! YAY. I'm taking the night off tonight, I'm coded out, so it's going to be a quiet week - but I should be getting the new art assets tomorrow (it wouldnt be the first missed promise). I'm really looking forward nervously to seeing the cavalry in the game because I am not sure if they are too big to work as sprites or not. I'm a bit worried about that, because a large unit of 3D cavalry just isnt going to be possible technically, I would have to commission some low poly versions and that's expensive. Aside from the yet to arrive art assets, the siege engines (which I must come up with a plan for media-wise) and the hydra, pretty much all of the core work is done although I know i'll be doing a few AI tweaks when I work on the gameplay - which I'll be doing soon. The hydra also, will be a fair few days work. Title: Re: Hangover Cure... Post by: Smurf on January 11, 2013, 08:54:38 PM I just wanted to post an update because I've been quiet for a few days, and that's so not like me!
I did do a bit of tinkering on the archery logic but it's not quite right yet, there's a few glitches in the logic that still need to be resolved. The distraction has actually been because I have received a lot of art assets. About 20 or so characters, each built up by components so I can swap their clothing out and mix and match. I've now completed an importer to assemble them but I am still waiting on some animation data. Whilst they aren't specifically intended for this project, I will be able to use them to render off a few more sprites. Specifically some archers and the much awaited cavalry :), plus a few more mages and the like and possibly even a peasant unit. I need to get them some weapons as I've not got much in my media library that's suitable, but we're very close to getting a complete set of units for the game. The models are actually intended for a future project which I will start once I have all of the required media (still lots more to go). [attachment=1] Title: Re: Hangover Cure... Post by: olly on January 15, 2013, 11:56:42 PM Can't wait to see the cavalry in the mix
:) Title: Re: Hangover Cure... Post by: Smurf on January 22, 2013, 11:10:31 AM The last week has been spent mostly playing Assassins Creed III on the new PC and then a bought of quite demoralising illness brought on by the depths of winter, so no progress was made on my part. The artist has been busy making a sci-fi character for some other project so he hasn't got back to me about the animations either, so all in all a week of no progress.
However I did just try the game out with 3DTV Play, the nVidia solution for making any game into 3D. Now I don't know if this is just my setup, or if it is a problem with 3DTV Play in general, but I had the same issue in Assassins Creed where the 3DTV Play cannot handle shadows. It struggles when two shadows overlap, and it gets the intensity of shadows completely wrong, and it utterly breaks the scene. Aside from that true 3D doesn't add very much to this project, unless you get right down to unit level. Watching over the heads of my soldiers as a unit of skeleton infantry charged them in true 3D was actually quite breathtaking! None-the-less, it's not a game mode I am going to focus on in this project, i'll be using it in my next one for sure - infact designing that game for 3D from day 1, but for now I am going to ignore it as it really doesn't do much for the gameplay of this game. One of the disappointing things I have found is that performance on the new PC hasn't risen very much which suggests I have a thread locking issue, I suspect I am locking something on the main thread which is pausing all the supposedly concurrent code, I shouldn't have - the only time I lock anything is when a mouse button is held down - but the behaviour suggests I've cocked up. So performance, and archery logic, are things I can be getting on with for now. At the moment though I have to focus on getting myself better, so progress isn't about to pick back up just yet. Title: Re: Hangover Cure... Post by: olly on January 22, 2013, 02:21:59 PM Sad to hear you are suffering but hope you get well soon. I haven't used the Nvidia 3d for many years so can't confirm about shadows etc but would be cool to see it in 3d and agree it's not necessary for this project etc..
Wrap up warm and enjoy Assassins Creed on the new pc and hope you locate the Thread issue. :) Title: Re: Hangover Cure... Post by: Smurf on January 22, 2013, 04:38:24 PM I had a little tinker in the code, I fixed the archery logic in a couple of minutes but the speed problem is not a thread issue. What it is is a limitation of the animation system.
Basically the way animation is normally done in 3D is simply a selection of rotations and movements of pivot points and the effected vertices - it isnt much data and so is usually just part of the 3D object. With sprites, usually you have a sprite sheet and you just view a different window of the sheet. Because of a side-effect of the sprite shadow system which I got working essentially by hacking, and of packing as much into memory as possible, the way I have done my animations is technically wrong. I send an entirely new image down the bus every time the animation cell changes - so the limitation on performance is more due to bus speed than anything else. Which is the same on both machines. In theory the textures should be getting loaded to the video memory on both machines which should speed things up for me but could effect users who dont have as much graphics ram, meaning that performance could be more of an issue for other users than it is for me. I am wondering if there is a problem with the textures loading in to video ram but I've checked the docs of the 3D engine and everything seems in order. Basically, performance isnt great - and more specifically, it isnt sufficient. I cannot help but wonder if I have tackled a few things incorrectly. The structure isnt quite right for multiplayer (although not far off) and the way the world is built is very inefficient given what the final world has ended up looking like after I had to remove tonnes of stuff. I think there is some merit to using modeled maps rather than the way I am generating them now and I am still really disappointed about the shaders on the mesh units. So... I have been thinking about a re-write and I have been thinking about using very low polygon models instead of sprites. I have also been wondering whether to base the games internal rules logic on OSRIC - I can't get a Warhammer license but for OSRIC I can (A: Because it is an open platform and although some of the licence does not bode well for computer games, however B: I know the author), and this would allow me to essentially make it the AD&D equivalent of Dark Omen. EDIT: Without shadows the game still runs at 30-40+ fps depending upon the number of units - but shadows are soooo pretty. Title: Re: Hangover Cure... Post by: Darkmancer on January 25, 2013, 01:17:57 AM I'm not sure what sort of game your aiming for but OSRIC seems to be RPG oriented which farely ill suited to large scale combat.
There's a few alternatives to WHFB kicking about but tbh you be better coming up with your own system because at the end of the day real time always plays different to turn based systems. It's all about what you gameplay to be about. Title: Re: Hangover Cure... Post by: Smurf on January 26, 2013, 12:14:57 AM I think my earlier reticence was more the illness talking, I am actually fiddling with the code now for half hour or so before bed - I'm about to attempt to get the soldiers pathing around buildings and other mesh based terrain obstructions.
To my mind the OSRIC is more about flavour than rules, the internals of the system already take a seperate to hit / damage approach - picking stats consistent with OSRIC is no biggy, the internal number base is 120 - which divides neatly into all the dice sizes which is why I chose it. The fact that OSRIC does not have an official battle rules set is actually an advantage because it gives me some artistic license - although there are some rules by a third party which I may look at. Title: Re: Hangover Cure... Post by: Smurf on January 26, 2013, 01:35:20 PM This is stage 1 of getting the units pathing around buildings and other mesh-based terrain obstructions. I have integrated the mesh data into the ground height algorithm, so currently they fight over roof tops!
[attachment=1] The next step is to integrate the terrain height data as part of the actual movement code and get soldiers to move around the obstructions when they cannot "climb" the area infront of them. Title: Re: Hangover Cure... Post by: olly on January 26, 2013, 05:42:26 PM :)
Title: Re: Hangover Cure... Post by: Smurf on January 26, 2013, 10:58:51 PM Pathing done :)
Now, sleep. Title: Re: Hangover Cure... Post by: Ghabry on January 27, 2013, 01:58:56 AM Units that can climb walls could be a nice extra tactical component btw :)
And it looks funny how so many troops fight on a building ^^ Title: Re: Hangover Cure... Post by: Smurf on January 27, 2013, 02:45:35 AM That's actually a really cool idea.
It does pose some quite probematical technical challenges though. Firstly, flying creatures can clear buildings already (although I have it disabled because it makes the game take longer to setup until I put in saving/loading of the level instead of regenerating the needed height data each time I run it - but it will be making a come back). Climbing would be technically very difficult because I would need to do not just animations for it, and extra logic, but more importantly it would require detection of wall edges which currently is not very precise. I am using very fast "vague" maths in a lot of places to speed things up in order to have as many units as possible, so the precision for the wall edges is not very accurate because it doesnt need to be - unless I were to include wall climbing in which case it'd have to be very precise indeed! Actually, it would necessitate reading off the 3D geometry data, or a lo-resolution version of it. Rather than just looking up an indexed memory bank of 1's and 0's that states whether an area is enterable on the ground. The maths for that just isn't fast enough at all for this game, sadly. Title: Re: Hangover Cure... Post by: Smurf on January 27, 2013, 10:57:45 AM So looking at the stuff coming up, I've got some interface work to do which I really am not looking forward to! At the moment the controls are kinda horrible, sorting that wont be so bad but part of the interface overhaul will be portraits for the units. I'm not going to animate them like in DO - but doing all the art is a task and a half!
Some units will need control icons, like archers. Currently they only fight in skirmish mode so they'll need some controls for shooting at fixed points, and I was thinking of a more ordered attack mode where the front rank fires and then moves to the back so that the next rank can fire, and so on. The same could also be done for melee units, the way they fight at the moment is a kind of skirmish, but they could have an option for solid formations too, although it's a bit of work to code that the results could be worth it. Then there is the multiplayer code, I think it makes sense to code this before any new unit AI is written because I may have to jiggle things around a bit in the unit control logic to get the multiplayer in, so I may as well do that first. Also there is the problem of sound effects. Music is covered, I don't know if I mentioned this before but I have gotten hold of some music from hollywood film score artists and it's absolutely bleeding epic, featuring full orchestras with french horns - the works, but I need to hook up with some re-enactors to get the battle sounds recorded. I was thinking earlier "Hey, i'm on the home stretch" - but then I stopped and realised how much there is to do still! Because after all this is done I need to work on the campaign side of the game and make about 100 or so maps! Title: Re: Hangover Cure... Post by: Smurf on January 27, 2013, 01:04:32 PM I thought you might enjoy this, although unplayable due to a woeful fps of 3 - it served the purpose of testing to make sure there are no crashes and the memory management is all under control.
Here, a maximum graphics settings battle of well over 10000 men, somewhere around 12000-14000. [attachment=1] Title: Re: Hangover Cure... Post by: olly on January 27, 2013, 09:53:17 PM I'd love to see an interface identical to Dark Omen's in terms of Map/Camera/Troop navigation and instead of 3D animating the portraits perhaps you could make them 2d animated like in Shadow of the Horned Rat, where just the eyes and mouths move.
Glad to hear Archers will be able to target fixed points, like Dark Omen for those critical intercept shots and unlike Rome Total War series where they can only target the enemy in their current position and generally miss. Does Dark Omen work out the arrow hit calculation when it hits the ground or like most games that the arrows get calculated if a hit or miss as they fire and before they actually hit, which is bad. I really like the idea of the first two ranks of archers moving to the back etc.. and would much prefer solid formations like Dark Omen, rather than the current kind of skirmish melee (sorry for my obvious bias and can wait for the future mod, hehe) Excited over the forthcoming Mulitplayer developments, is it more than 2 player? Would be cool even if it meant smaller amounts of troops each etc. The intended music sounds great and will look forward to hearing more and perfect that you know re-enactors for battle sounds. Please let me know if we can help with anything, especially designing new maps! Loving the latest screen shot and seeing them fighting in between the buildings. I will dream of playing. :) Title: Re: Hangover Cure... Post by: Smurf on January 27, 2013, 10:19:43 PM I'd love to see an interface identical to Dark Omen's in terms of Map/Camera/Troop navigation I don't really recall the specifics of Dark Omens controls, but I do intend to include rotation as a command that can be issued as that annoyed the hell out of me in Rome Total War, it just didn't work as nicely as DO. The changes I made today are quite nice to work with.Select a unit with the left mouse button, if a unit is selected you give it move orders with the right. Shift to issue a chain of orders. If no unit is selected the the right mouse button allows you to rotate the camera. Arrow keys allow you to move the camera, and + and - allow you to change the number of ranks in a unit. Quote and instead of 3D animating the portraits perhaps you could make them 2d animated like in Shadow of the Horned Rat, where just the eyes and mouths move. For me this just isn't a major part of the game. DO was telling a story so having an animated leader in a game where units all had their own storyline was part of that, but that isn't the case for my game - it's very definitely multiplayer, so I don't see it as necessary - and it is an aweful lot of work just to create stills for all the units let alone animated in 2D or 3D (in point of fact, I typically generate 2D graphics from a 3D source, and have done for years).Quote Glad to hear Archers will be able to target fixed points, like Dark Omen for those critical intercept shots and unlike Rome Total War series where they can only target the enemy in their current position and generally miss. It's one of those DO inspired gameplay features I would consider to be essential. It's not currently in the game, but it will be.Quote Does Dark Omen work out the arrow hit calculation when it hits the ground or like most games that the arrows get calculated if a hit or miss as they fire and before they actually hit, which is bad. I don't know how DO does it, but I do it by calculating where the shot will land and then firing the arrow down that path. It would be much faster to check for collissions just once before the shot is fired - which when dealing with large numbers of troops will save a lot of calculations - but I havn't done that. I check for collisions on each arrow on each move. I think I still have work to do here which I will sort out when I do the targeting of an area.Quote I really like the idea of the first two ranks of archers moving to the back etc.. Yeah I think it would look good, but I still have to work out whether the second rank should move forward, otherwise the unit will move backwards on the battlefield as it fires - but if the second rank moves forwards then it precludes the point of the maneuver.Quote and would much prefer solid formations like Dark Omen, rather than the current kind of skirmish melee (sorry for my obvious bias and can wait for the future mod, hehe) Solid formations are very warhammery, the skirmish battle are much more cinematic in style. Ideally I would like a mix, and it will be interesting to see what effect that has on the combat. Anything which can add a tactical element to the game is welcome - as I want to avoid it being a zerg rush.Quote Excited over the forthcoming Mulitplayer developments, is it more than 2 player? Would be cool even if it meant smaller amounts of troops each etc. I plan to support lots of players.Quote The intended music sounds great and will look forward to hearing more and perfect that you know re-enactors for battle sounds. I just hope they say yes!Quote Please let me know if we can help with anything, especially designing new maps! Well if you fancy designing the campaign map we could talk about that. I was thinking something parchmenty, and stylised. Would this fall into your skill set?Quote Loving the latest screen shot and seeing them fighting in between the buildings. I will dream of playing. If only it was actually playable with that many soldiers!Title: Re: Hangover Cure... Post by: Smurf on January 28, 2013, 10:45:35 PM I started work on the multiplayer tonight.
Firstly, when I compile a copy is automatically sent from my laptop (which I prefer to code on at the moment) to my desktop, if the application is running on the desktop then it detects the update, closes and relaunches itself - that's kinda neat and makes developing much easier :) It means I can code in the comfort of my games room, whilst the desktop is in the lounge :) - and I know it hasnt crashed because I see the network connection hitting :) I've got a TCP connection established between the server and the client and that all works fine. I auto-detect which computer is the server or client at the moment because that makes dev easier, simply by looking for a file that is only on the desktop - but at some point there will need to be a lobby) The next step is to get a UDP connection established too. The reason there are two distinct network protocols (TCP and UDP) and that i'm using them both is because whilst TCP is very reliable - packets always arrive in order and any missing packets are resent, it's very robust and stable - The disadvantage is that the packets are larger by somewhere around 30 odd bytes each. So game state changes will be sent over TCP, and non-critical realtime packets will be sent over UDP. For some reason I am struggling to get the UDP connection to establish a link tonight, but I am sure some time away from the keyboard will fix it - so Big Bang Theory and a cup of coffee is on the menu for the rest of the night :) Title: Re: Hangover Cure... Post by: olly on January 28, 2013, 11:14:58 PM Great to learn about the network multiplayer setup, thanks.
Just for reference the Dark Omen Controls- CONTROLS MOUSE Battlefield LMB select RMB center camera view Hold right button scroll view towards mouse pointer Books LMB select RMB go to relevant page KEYBOARD Battlefield F1 cancel pending instruction F5 toggle banner sort mode A auto-deploy regiment B break button C charge button F fire button H halt button M magic button S strength button (hero) Hold Shift force the turn and face pointer cycle clockwise through friendly regiments Shift < cycle counter-clockwise through enemy regiments Shift > cycle clockwise through enemy regiments Enter end Deployment Phase / End mission (when instructed) Tab or Spacebar Invoke map / Turn off map - return to battlefield + / - cycle regiment formations Left arrow rotate camera view left Right arrow rotate camera view right Up arrow zoom in camera view Down arrow zoom out camera view Delete maximum camera zoom (centers view to the cursor's position) End medium camera zoom (centers view to the cursor's position) Page Down minimum camera zoom (centers view to the cursor's position) Alt drop Magic Item on battlefield (Hold Alt then left-click item) Ctrl place multiple move waypoint on battlefield (move pointer must be active) Esc Menu - Abort, Adjust sound balance, continue F4 or T chat mode (multi-player only) Camp Left arrow replay entire speech Right arrow skip entire speech (continue campaign if speech has ended) Spacebar skip current sentence F9 view troop roster F10 go to Save menu Debriefing Left arrow previous page Right arrow next page Down arrow exit debriefing F9 view troop roster F10 go to Save menu Anywhere F6 momentarily view Pop-up help (even if Off in options) "Anything which can add a tactical element to the game is welcome - as I want to avoid it being a zerg rush". Not sure if it does this already but is there a bonus for attacking from rear and flanks to encourage more tactics, would be ideal with the solid formations that prevent regiments to pass through each other like in the terrible Mark of Chaos. That's what Rome Total War series did get right - the solid formations for blocking manoeuvres but im realising we maybe talking more in terms of how formations behave once in melee? Love Big Bang Theory :) Title: Re: Hangover Cure... Post by: Smurf on January 29, 2013, 12:11:57 AM Currently there is no flanking bonus because skirmishing doesn't really warrant it, but it is something I'm astutely aware of and will do if I can get the solid formations in.
Thanks for the control summary, what I've got at the moment isn't the same but it feels okay. We'll see if it stands up to play testing when we get that far :). I've got half a mind to make the server a separate non-graphical app, if it isn't too much refactoring, as this approach will allow me to compile the server app under Linux which means it could be run on a web server - which would be awesome for campaigns online - it could effectively result in an inbuilt ladder or mini campaigns with persistent campaign maps or something like that, with direct output to an SQL database for integration into websites. No promises on that though, we shall have to see if I can decouple the graphics easily enough. Title: Re: Hangover Cure... Post by: Smurf on February 02, 2013, 12:31:36 PM I've jut commissioned some artillery pieces to be made especially for the project. I'm making use of the superb skills of Nick Igoe (http://www.nickigoe.co.uk/) who is extremely talented, and he's cut me a good deal because I did not ask for exclusivity so he can sell the assets on to other games programmers.
Here is one he already had made, a trebuchet. It's rigged for animation but I need to sort out the sprung rope so that it animates and flexes properly, as he had never made animation for the model. He's making me 3 new pieces, a canon, a mortar, and a catapult. So we'll be well stocked for artillery pieces! [attachment=1] Title: Re: Hangover Cure... Post by: Smurf on February 02, 2013, 02:44:52 PM He's made a start already. Here is the canon before any textures have been applied.
[attachment=1] Title: Re: Hangover Cure... Post by: Smurf on February 02, 2013, 03:28:09 PM I've been doing a lot of reading up on networking today, and note with some interest that in some countries UDP traffic is routinely blocked. It sounds strange to me, but I guess the idea is to limit the web to just web pages and email. Because of this I shall have a go at abstracting my network layer from the socket used - and provide the functionality to send gameplay data over either UDP or TCP. UDP will be faster, but I would like not to exclude people in far off places like the United Arab Emirates and such from playing the game so if I can I will include a TCP option.
I did start listening to a 2 hour seminar by the lead network programmer on Halo 3 too, but after 40 minutes I was having to physically stop myself from emailing him optimisations to his own techniques. So I have high hopes of the networking side of the game. If only I was as good graphically ! Title: Re: Hangover Cure... Post by: olly on February 02, 2013, 04:38:17 PM Fantastic Arty pieces can't wait to see them wreak havoc on the battlefield (haven't seen Nick's stuff since trying to track down Andy Igoe! ;)
I never realised UDP was blocked in some countries and fair play to seeing some optimisations to Halo 3 networking! :) Title: Re: Hangover Cure... Post by: Ghabry on February 03, 2013, 01:21:43 PM Our university firewall throws away some TCP and UDP traffic too (for security reasons). This prevented me from logging in one MMORPG (cant remember which one). But otherwise everything worked so far.
[Note: Topic moved from "Tavern" to "Tactical wargaming and other Warhammer games"] Title: Re: Hangover Cure... Post by: Smurf on February 10, 2013, 10:35:36 AM I've had the art for two new mesh units.
[attachment=1] Canon [attachment=2] Mortar Title: Re: Hangover Cure... Post by: olly on February 10, 2013, 06:44:40 PM very nice!
:) Title: Re: Hangover Cure... Post by: Smurf on February 22, 2013, 07:29:55 AM I just wanted to post to state that I am still alive and that the project is not forgotten or anything. Having both a day job and 2 of my own businesses does sometimes take up a lot of my time and so I've not been able to get close to this in a month - but I will be back at it in a couple of weeks.
|