BOTF 2

BOTF2; support/discussion/questions

Moderator: thunderchero

Should BOTF be remade whilst keeping its charm?

I think a renewed BOTF will deffinately show gamers that this game is the best game that has ever been made
61
91%
I either like the original BOTF and spend my time just remodding it continuously or just give up with trying to keep up with 21st century gaming tech
6
9%
 
Total votes: 67

User avatar
Tethys
Past Administrator
Past Administrator
Posts: 2392
Joined: Fri Jul 18, 2008 2:00 am
Location: Your mom's bed ;)
Contact:

Post by Tethys »

Xordan, I would really like to help you with this. Check your PM box soon and we can chat on MSN if you have it ;)
Not for the weak of heart...
Galaxies MOD v0.4.0 <--- GALM/Galaxies Mod latest version
matress_of_evil
Lieutenant-Commander
Lieutenant-Commander
Posts: 213
Joined: Sat Apr 26, 2008 2:00 am
Location: South Wales - Not The Australian One, The Other One!

Post by matress_of_evil »

Hi Xordan, i'm part of the team that is working on Supremacy. Funnily enough, I found out about you and this thread through Malvoisin, who is part of the BoTE team, so both games now actually know about you. I've contacted Mike, the developer (And only programmer as Floke said) of Supremacy about you, so he might contact you or post here soon too.

I'm not sure how much of Supremacy you've seen. Mike will be able to give you the specifics of the game if you want to know, but I can confirm that Supremacy is built using .Net. I don't think it includes XNA yet (It certainly doesn't require the installation of XNA at the moment to run, but Mike has been looking at requiring it for future builds) The current release is based on .Net 3.5 SP1, although the next release will need .Net 4. I've got some Development builds and they already need .Net 4, and these builds actually have quite a nice install prompt that tells you to install the correct version of .Net. They even automatically download it for you if you let them.

Supremacy's data files are xml's, so it's relatively easy for people to mod the game. Moddability was one of the main concepts behind Supremacy for us. I think that is something you would need to consider if you do build your own game.

Supremacy doesn't yet have a combat system. In answer to Floke's question many posts back, (Yes I did just read this entire thread) we *did* have a combat system that was being built by CdrWolfe, an inexperienced forum member who took the plunge and learned how to program so he could help us. He got quite far with the engine - we even have video previews of it on Youtube Here - but we had to drop it because we later found that the underlying engine, Irrlicht, is compatible with Windows XP ONLY. The developers had no intention of updating it, so we've had to drop it.

CdrWolfe is now trying to learn more about programming before making any more attempts. I also haven't heard from him in a few months, so in all honesty I don't know if he really is going to come back and make a new combat system for us. So we actually have a position available for anyone that wants to have a go at developing a system for us. *hint hint* :P

We did actually plan on sharing our combat system with the BotE team. If you did develop a combat system, would you be willing to share it? I have no idea what the underlying technologies are and everything everyone has said above about combat systems is gobbledygook to me, so you'll need to speak to Mike and Malvoisin about it, but if you would be willing to share, then i'm sure we could share some of our own resources, such as the artwork.

Since i'm not sure how much of Supremacy you've seen, if you want to look at it yourself, you can download the game from Here. We also have a game manual Here. Or, if you want to look at the game in more detail, we've got the Source Code up on Codeplex.

We an also help you with our experiences of developing Supremacy. If you do plan to make your own game, think really carefully about it and spend as much time as you possibly can at the planning stages. Decide what it is you're trying to accomplish with the game and write down some general game concepts and stick to them. Also write down some basic, overall design features that will be in your game and stick to these. One of the problems we've had with Supremacy is 'feature-creep', where we keep coming up with new ideas to add to the game. As more and more ideas are tacked on, the game ends up taking more and more time to develop, until it gets out of hand. If we keep adding ideas, the game will just never be completed, so we've had to reassess some of the ideas and either prioritise them, put them on hold, or ditch them completely.

As Flocke also said, we're skipping on the game AI and doing that last as well. AI will likely be the single hardest to do part of the game, so by doing everything else first, we can be sure we can make the AI tie in to the existing game. We have big plans for the AI too, so it's frustrating that we have to wait, but it means we can get everything else done much sooner. Prioritising features would likely help the development of your own game run more smoothly.

As for micromanagement, that's something Mike has spent a LOT of time looking at, and he's come up with the concept of 'macromanagement'; basically, give players all the micromanagement they could want, then make it all controllable by the AI as well via interface macros. Players can then choose the precise level of micromanagement they want. Systems for instance can have system governors that will decide what to build and keep your systems growing and producing, or ships will automatically explore the galaxy and decide their own orders for you, and so on. People that want to do everything can then simply ignore the governors and give all the orders they want.

Art really isn't a problem for you with this community. We've got some massively talented people, not just on star-trek-games, but here on AFC as well. AFC actually used to be our parent forums. And the internet gives you access to even more people - just look at Scifi-Meshes for instance if you're looking for models. But as Thunderchero has already told you, our secret is that we've gathered a huge amount of models from modellers that are willing to share their designs under an open-source, but fully credied banner. Same goes for all the other art forms, from 2D images to music. It's all up on our publically-accessible Sharepoint Site, so we can also use that to show people what we've already got and ask whether they would like to contribute to it. All team members can check in and check out artwork, but no one else can, so the work is completely safe. And we maintain a credits list so we know where credit is due.

I'll stop rambling now. It's good to hear that there is another potential enem...err...I mean...that there is more competition out there, and I wish you luck. But the offer for you to develop a combat system for us is genuine too. :P
Check out the latest news for Star Trek: Supremacy, Birth of the Empires and more at Star-Trek-Games.com!

"Anyone without a sense of humour is truly at the mercy of the rest of us."
User avatar
Flocke
BORG Trouble Maker
BORG Trouble Maker
Posts: 3196
Joined: Sun Apr 27, 2008 2:00 am
Location: Hamburg, Germany
Contact:

Post by Flocke »

Ahh, it's about time you showed up Matress, and greets to Malvoisin who still seems to lurk around on here from time to time. :mrgreen:

I didn't know the 3D combat got dropped again, sad to hear, you sure Irrlicht is compatible to win xp only? According to http://irrlicht.sourceforge.net/features.html#platforms it's platform independent and compatible to pretty much everything! The platform dependence must be due to CdrWolfe's own code! :roll:

Btw, we have october by now, how's progress with your project Xordan? :)
vjeko1701
Cadet 3rd Year
Cadet 3rd Year
Posts: 13
Joined: Fri May 07, 2010 2:00 am
Location: Krapina/Zagreb, Croatia
Contact:

Post by vjeko1701 »

Hey, why don't you take another look at Supremacy when the new update arrives. We have an enormous amount of new artwork and a whole bunch of new features done for it. If you joined our team we could finish the game much faster.

Wait for the next update before you making your final judgment.
matress_of_evil
Lieutenant-Commander
Lieutenant-Commander
Posts: 213
Joined: Sat Apr 26, 2008 2:00 am
Location: South Wales - Not The Australian One, The Other One!

Post by matress_of_evil »

It's nice to know you still care, Flocke. :P

Well I don't know the specifics behind the combat system. Programming is just gobbledygook to me i'm afraid, like I said above. All I can go on is what Wolfe told us, and I haven't spoke to him in a while. But he definitely said it was the underlying engine that was at fault.

We've had other combat engines over the years too. Strings once made a cool one that was based on XNA where you play as the Defiant and go around blowing up an Asteroid field. I put it up on Sharepoint Here (2.5mb). You'll need the XNA Refresh 1.0 to play it. Move around with the cursors on your keyboard and press Space to fire your Pulse Phasers.

As Vjeko said, if you have the skills to make a compatible combat system, we would welcome you into the team, Xordan. Vjeko is actually another member of the Supremacy team and he works on the images and ingame database.
Check out the latest news for Star Trek: Supremacy, Birth of the Empires and more at Star-Trek-Games.com!

"Anyone without a sense of humour is truly at the mercy of the rest of us."
User avatar
mstrobel
Cadet 2nd Year
Cadet 2nd Year
Posts: 8
Joined: Mon Apr 28, 2008 2:00 am

Post by mstrobel »

Hi there, I'm the lead developer of Star Trek: Supremacy. I should probably clear a few things up here, as my guys tend to be a little off when it comes to describing the technology behind the game (they're not engineers themselves).

First, Supremacy has never had a combat system. CdrWolfe independently set out to work on an experimental game that some people hoped could eventually be used in whole or in part for our eventual tactical combat implementation. Truth is, Wolfe has a long way to go in learning solid software engineering practices, and there was no way he would have developed a system robust enough to ship with the game--at least not the first time around. My expectation has always been that I'll end up developing the combat system myself, unless of course I can snag a talented and experienced engineer to help out ;).

Supremacy is built on .NET 4, with the game client being built with WPF, and the new 3D bits currently use XNA (hosted in WPF via the interop provided by D3DImage). The UI is resolution independent, and with the exception of the raster images used to depict planetary structures, race headshots, etc., the UI is almost entirely vector-based. It has a very rich control suite with a powerful layout engine, and it has pretty decent Direct3D (and thus XNA) interop support. It has incredibly rich support for styling/theming, so the only obstacle to having empire-specific UI designs is actually having someone to design them.

The core game library could probably run cross-platform on Mac and Linux with Mono, though a new client front-end would need to be developed. The client/server communication is all done through WCF, and I'm not sure what the status of WCF support is on Mono. Honestly, though, most gamers either own dedicated Windows PCs or dual-boot Windows alongside Mac OS or Linux anyway.

Being an engineer yourself, you no doubt know what a massive undertaking it would be to start a new BotF-style game from scratch. Having worked on Supremacy for about four years now in my spare time, I can tell you that the odds of you recruiting and retaining any other developers are (sadly) pretty slim. Some do inevitably surface, but they tend to disappear almost as quickly. However, if you'd be interested in working on Supremacy, we would of course be glad to have you. There's still plenty of undeveloped aspects of the game in which you could have input, and I'd be also glad to assist you in developing a cross-platform client if you're passionate enough about the idea to take on the responsibility. Having an experienced graphics engineer on the team would be a godsend; the fans are getting restless for a tactical combat system.

We're a pretty open and dedicated community, so if you're really serious about developing a Star Trek strategy game, I hope you'll at least consider teaming up with us. I should add that the BotE guys have a pretty solid game in the works too, and from what I've seen, they have a reasonably well-architected core written in C++. I suspect their Win32 front-end could be scrapped and replaced easily enough if your primary concerns about their project are cross-platform compatibility and game's the look and feel :).

Of course, if you do decide to move forward with your own game, we'll support you in any way we can. We have a large library of models, media, and general content which are licensed under the Creative Commons Attribution-Noncommercial-Share Alike 3.0 license. The source code to both Supremacy and BotE is available under a pretty friendly reciprocal license (the Ms-RL), which is generally a bit more permissive than the GPL, and a lot more readable.

Godspeed.
Malvoisin
Lieutenant-Commander
Lieutenant-Commander
Posts: 158
Joined: Fri Apr 25, 2008 2:00 am
Location: Germany
Contact:

Post by Malvoisin »

Well, CdrWolfe's attempt failed due to Irrlicht.NET not supporting platforms other than Windows XP. Irrlicht itself does but the c# port he used did not and there was no progress on their behalf so he quit it. I don't know the current situation there though.

Also regarding the "few man months" for the rest of gameplay, although I'm not saying it might not be possible, it turned out for us to be quite a few "man years", five to be exact, before we could deliver a botf-style near-complete Alpha version.
Instead the AI took only a few man-months (3 to be exact with two people working on it so in fact 6) so this might be useful information for you about the difficulty of programming a TBS AI. I mean of course you can try to make it uber-complex and -adaptable, -selflearning and -whatnot but I don't see the point to keep single-player aspirations that high right from the start. There's plenty of time afterwards once the game has a growing player base.
BotE's AI for that matter is pretty challenging already and way better and more adapting to current in-game situations than the botf one so if botf was anything you want to compare it to it's sure good enough to compete.

As Mike said, the UI is the weak part of BotE yet but to chop out MFC shouldn't be that much of a problem for an experienced programmer. In the end, a complete 3D engine can easily be used by both Supremacy, BotE and even a possible 3rd game of yours (as CdrWolfe also intended back then).
And I'm sure concerning the AI part that you want to outsource to somebody else, well Mike and SirP (BotE lead programmer) can sure get a crack on it both and work something out together once the framework is done. BotE for example fully runs using WINE under any platform that supports WINE and the only reason it needs WINE is the MFC part for its GUI so once that one is replaced (CEGUI or Qt), it's multiplatform, since it's just plain cpp without any additional platform-dependent libraries other than MFC.

Btw. we've also programmed a 3D combat simulator (just without any actual modern engine, more like 3D on a Commodore 64 type of 3D ;)), with also an AI fighting the whole battle on automatic combat mode. Here's some (nostalgic ;)) animated gif taken from the in-game simulator (which is not visible in-game due to the looks as you might understand ;) but running in the background):

You can see it definitely needs graphics ;) as well as tactical combat options for the player to choose from and change during battle instead of letting the AI all handle it by itself. But like many things in BotE, it's all kind of already there, just needs the picking up. So writing an AI for your 3D combat engine should not be much different, at best most things can just be copypasted virtually.

In the end, we are all working on the same kind of game aren't we (minus the Star Trek Theme but you know, mods... ;)).
User avatar
mstrobel
Cadet 2nd Year
Cadet 2nd Year
Posts: 8
Joined: Mon Apr 28, 2008 2:00 am

Post by mstrobel »

Malvoisin wrote:Well, CdrWolfe's attempt failed due to Irrlicht.NET not supporting platforms other than Windows XP. Irrlicht itself does but the c# port he used did not and there was no progress on their behalf so he quit it. I don't know the current situation there though.
The Vista/7 compatibility issues with Irrlicht.NET were actually pretty simple to solve--apparently there was a platform change in the way unmanaged strings were deallocated in interop scenarios. I managed to fix it in at least a few places in less than an hour. It just took a bit of Googling.
Malvoisin wrote:Also regarding the "few man months" for the rest of gameplay, although I'm not saying it might not be possible, it turned out for us to be quite a few "man years", five to be exact, before we could deliver a botf-style near-complete Alpha version.
Well, a "man-month" generally means an engineer is working full-time for a month (i.e. 40 hours a week), so for projects conducted in one's spare time, a man-month could easily last a year or more ;). So even with his rather conservative estimate and a less aggressive feature set, he's easily looking at a couple years.

Supremacy recently entered into its fourth year of development with no end in sight. Like Mal said, even BotE, which has managed to keep a far more aggressive pace than we have (at the cost of some flexibility/extensibility), is in its fifth year or so.
Malvoisin wrote:Instead the AI took only a few man-months (3 to be exact with two people working on it so in fact 6) so this might be useful information for you about the difficulty of programming a TBS AI. I mean of course you can try to make it uber-complex and -adaptable, -selflearning and -whatnot but I don't see the point to keep single-player aspirations that high right from the start. There's plenty of time afterwards once the game has a growing player base.
I'm likely going to go the longer route, though I suspect I may end up wishing I'd taken a less aggressive, more iterative approach like you guys did :).
Malvoisin wrote:BotE's AI for that matter is pretty challenging already and way better and more adapting to current in-game situations than the botf one so if botf was anything you want to compare it to it's sure good enough to compete.
It sure kicked my ass without breaking a sweat. :lol:
Malvoisin wrote:As Mike said, the UI is the weak part of BotE yet but to chop out MFC shouldn't be that much of a problem for an experienced programmer. In the end, a complete 3D engine can easily be used by both Supremacy, BotE and even a possible 3rd game of yours (as CdrWolfe also intended back then).
If it uses Direct3D, it could be hooked into Supremacy easily enough. I could host OpenGL, but OpenGL support on Windows is pretty lacking these days, and I wouldn't be able to overlay a WPF interface on top of 3D scene due to airspace issues. That's not a problem with Direct3D because I can host a D3D9 surface within the visual tree. There'd have to be an interop layer, but that would probably be less of a headache than implementing a combat system myself.
Malvoisin wrote:And I'm sure concerning the AI part that you want to outsource to somebody else, well Mike and SirP (BotE lead programmer) can sure get a crack on it both and work something out together once the framework is done.
I've got some ideas for the AI bits, and I've done some experimentation using pathfinding algorithms to manage colony infrastructure and production. At this point, I'm at least moderately confident that I can pull off a decent AI, as opposed to before when I had no idea whatsoever.
Malvoisin wrote:Btw. we've also programmed a 3D combat simulator (just without any actual modern engine, more like 3D on a Commodore 64 type of 3D ;)), with also an AI fighting the whole battle on automatic combat mode. Here's some (nostalgic ;)) animated gif taken from the in-game simulator (which is not visible in-game due to the looks as you might understand ;) but running in the background):
I definitely need to pillage some of your combat code :twisted:. Are you guys going for a real-time or turn-based combat system? I'm going for a turn-based system similar to BotF.

Mike
Malvoisin
Lieutenant-Commander
Lieutenant-Commander
Posts: 158
Joined: Fri Apr 25, 2008 2:00 am
Location: Germany
Contact:

Post by Malvoisin »

for now a tick(=turn)-based combat. Right now all ticks are computed at settable speed (or at very fast speed when having no graphical output) in combat simulator without any user input until the battle ends.

I did a bit of recent coding for it though SirP did all the ship movement algorithms and like 99% of the rest ;). My input was the usage of firearcs and 3D orientation of ships for weapon hit calculations and angle of the ship in 3D space.
User avatar
mstrobel
Cadet 2nd Year
Cadet 2nd Year
Posts: 8
Joined: Mon Apr 28, 2008 2:00 am

Post by mstrobel »

Malvoisin wrote:for now a tick(=turn)-based combat. Right now all ticks are computed at settable speed (or at very fast speed when having no graphical output) in combat simulator without any user input until the battle ends.
Sounds like it could be used for a turn-based system easily enough; if it's tick-based, it could theoretically be interrupted periodically (every so many ticks) to prompt the players to select targets and maneuvers for each turn. Once that's done, the ship paths could be recomputed based on the new target/maneuver information, and the engine could pick up where it left off.

I think the biggest benefit of a turn-based system is that the simple nature of ship orders (i.e. a target and maneuver) frees the player from having to plot courses for individual ships. Thus, we can plot maneuvers in all three dimensions without having to implement some cumbersome interface for plotting 3D courses with 2D input devices. The next biggest benefit in my mind is that the turn-based system would help keep combat time short, which is desirable when other human players are waiting patiently for you to lay waste to each other. There's less potential for players to drag out a combat engagement with prolonged evasion maneuvers and the like.
User avatar
marhawkman
Commander
Commander
Posts: 463
Joined: Thu Feb 19, 2009 3:00 am

Post by marhawkman »

mstrobel wrote:
Malvoisin wrote:BotE's AI for that matter is pretty challenging already and way better and more adapting to current in-game situations than the botf one so if botf was anything you want to compare it to it's sure good enough to compete.
It sure kicked my ass without breaking a sweat. :lol:
AIs always have flaws. I used to like playing against AIs, but it doesn't take long to figure out the flaws in an AI and exploit them mercilessly.
Malvoisin
Lieutenant-Commander
Lieutenant-Commander
Posts: 158
Joined: Fri Apr 25, 2008 2:00 am
Location: Germany
Contact:

Post by Malvoisin »

of course. Periods between tick interruptions could be constant or players can press a certain button to interrupt progress at a next given tick number. Opens up many possibilities.

botf combat was kind of perfect in that way since it focussed on the "good" ;) looks and only very high-level commands could be made. Average combat time in BotE is short too, does not take that many ticks/seconds to run a 10-ship combat. If you watch it in "realtime" it takes perhaps up to 30 seconds depending on how leveled the odds of the battle opponents are.


Marhawkman, sure, our AI is not perfect and there are two prominent misbehaviour examples it performs, i.e. does not cancel enemy system bombardment at all when getting attacked on their own homeworlds and the other one is sending colony ships into certain death one after another when having not enough scouts thus not seeing the enemy waiting at a certain system. It should switch colonization targets earlier when having suffered a lot of non-combatant ship losses. Instead this takes sometimes more than two dozen turns before the AI finally recalculates its now worse situation and resets priorities.

Anyway, when playing on HARD or IMPOSSIBLE, I've got problems myself, especially on IMPOSSIBLE, but that's mostly because the AI gets so many resource and build time cheats on that level (like needs 1/10 of usual time to build structure and ships with 1/10 of resource costs). It doesn't use other cheats so no extra ships like in botf or something like that. It reacts to changed circumstances though, especially in diplomacy, so it's a bit more difficult to exploit its flaws mercilessly since you might end up fighting against an alliance of all AI players against you if killing too much non-combatants and that's mostly even my doom when faced with that.
User avatar
mstrobel
Cadet 2nd Year
Cadet 2nd Year
Posts: 8
Joined: Mon Apr 28, 2008 2:00 am

Post by mstrobel »

I would envision all players issuing orders simultaneously, as in BotF, at least in multiplayer games. This helps level the playing field if some players aren't as quick as others; TBS players may prefer to take their time, as opposed to RTS veterans who have mastered the art of issuing orders on the fly. It keeps the mechanics of combat in sync with the rest of the game.

So, if the combat engine is engineered as a state machine (updated in discrete units of work, e.g. on each tick), then it should be pretty trivial to halt the tick counter while all players issue orders, then resume it.

Single player games could allow for arbitrary combat interruptions, though I generally try to avoid having different sets of mechanics for the same process. But the beauty of the design is that it's flexible to do either, or even something completely different.
Xordan
Cadet 3rd Year
Cadet 3rd Year
Posts: 14
Joined: Sat Sep 04, 2010 2:00 am

Post by Xordan »

Hi, I'm still here and haven't been hit by a bus :D

Work and travelling has been sucking up my time, but I'm still working on things. I've been playing around with some more radical ideas for the game and getting the foundations of everything finished up. I plan a code release of some kind in November. It won't be a game, but it will demo most of what I've been thinking of lately. If it turns out good then it should be pretty easy for me to extend with nice gameplay features.

All my code is licenced under the LGPL, so it's usable by anyone who wants to use it. I'd be perfectly happy with any of you guys ripping out the bits you want to use (like the 3D combat) and putting it in your own games. My goal here is to try out some of the ideas I've got and hopefully create a game in the process. If all my ideas suck and the only usable bit is the 3D stuff then I'd like that to at least be used by someone :)

As for man-months/years, that's a pretty poor metric anyway. Not all programmers are equal, someone with years of experience is going to work magnitudes faster than someone with none :) I know plenty of people who are as good and better than me at this stuff who may be interested in doing some work on it too, that would speed things up a lot. I need to get all this basic work finished up first though.

I'm not sure how well my stuff will interoperate with C#, I don't know very much about that. I'm aware that some guy was working on C# bindings for my engine some time ago, so perhaps that would be a solution for Supremacy if using native C++ would be a problem.

I'll post another update soon, perhaps with some pictures 8)
Malvoisin
Lieutenant-Commander
Lieutenant-Commander
Posts: 158
Joined: Fri Apr 25, 2008 2:00 am
Location: Germany
Contact:

Post by Malvoisin »

sounds quite cool 8)

yeah, the metric is not really one in a mathematical sense, e.g. SirP was an engineer student in its first semesters when he began trying to implement a basic code engine for BotE, and in the end, not even code lines tell the truth all the times.. ;)
Post Reply

Return to “BOTF2”