Jump to content

Moribundus

Members
  • Posts

    193
  • Joined

  • Last visited

Legacy Profile Fields

  • LOCATION
    Dark side of the Yavin moon.

Moribundus's Achievements

Collaborator

Collaborator (7/14)

  • First Post
  • Collaborator
  • Conversation Starter
  • Week One Done
  • One Month Later

Recent Badges

0

Reputation

  1. Oh man, you got fooled pretty badly. I hate to say it, but Blender is completely free (even open source), so anything that poses as a Blender trial must be obviously fake. I don't know where you downloaded it from, but safest is it's homesite - blender.org in this case (btw. the latest version is 2.49a, anything "newer" is fake). Always double check what programs you want to run or install. This is basically the same case as computer piracy. They don't see the consequences, so they don't care. I think these guys really need a job, they're probably just a buch of students anyway. Yes, but I mentioned IronPython as an easy choice for managed code. Lua is harder to embed (since it's not object-oriented) and I'm not sure about it's .NET implementation.
  2. @Steel: this kind game extension is usually done through scripting (events). You could do basically through XML, but you'd be basically creating your own scripting language as a subset of XML. And it would be very messy. If you're interested, check out some IronPython (Python implementation under CLI) tutorials - like this one http://secretgeek.net/host_ironpython.asp. I'd recommend keeping your sources public. Keeping them private won't help you in any possible way (unless you plan to sell the game, which of course you can't in this case). Eg. I'm no C# programmer and don't have time to work on another project full-time, but I have few years of C/C++ experience (among other things ) and can find the time to glance through your code and report any obvious bugs I might spot (or post a patch). @Tex: Terra is currently on hiatus. I have my hands full with either school projects or freelance work. I plan to return to her once I'm less busy, but no one knows when that will be.
  3. Just a small question popped up in my mind. How are you going to address algorithmic moddability of your game? So far I've heard only about adding or removing units, planets and so on. But what about creating entirely new missions, tweaking the UI (ie. adding a dialog box for those missions), scripting new events and such? We can already create total conversions of units, UI skin and galaxy layout in the old rebellion. What we can't however is to modify the game logic itself (blackbox). How do you plan to address this issue? Btw. what database engine are you using? Just that you might have to end up writing some binary/xml serialization routines anyway because you'd probably want to distribute your mods to other computers. I'm quite curious how you chose to approach this problem.
  4. About partial evaluation of conditional expressions: keep in mind that CPU is highly parallel beast and tends to calculate lot of stuff in advance, which is problematic with too many dynamic branches, that might actually force CPU to throw away already calculated data and thus slow it down. This is a fine example where premature optimization might actually hurt your program's performance. @David: Plan to actually make your source public sometimes?
  5. You worry too much (and about the wrong things). If your profiler says it's bottleneck, then optimize it. Otherwise keep the design as clean as possible. Besides there's nothing wrong with using dynamic arrays. They adjust their size only when you add/remove items from them, which is not done so often (and usually these containers are very optimized). And about bottlenecks. You game will mostly be slowed down by inefficient algorithms (eg. with bad time complexity) or hw constraints (waiting for GPU to finish rendering). To your original question, keeping related data close together might be more cache friendly rather than keeping them separately, but again profiler is your friend here. My two cents. Btw. I have have kinda the opposite problem. Terra runs too fast and eats too much CPU. I'll have to implement some sort of framerate limiter to make her more gentle on my lappy's battery.
  6. See this topic: http://forums.swrebellion.com/viewtopic.php?f=2&t=4216
  7. I mustt hurry to school, so I will keep it short. I think you're on the right track. Unless you're using physics based damage model, the "server" (or the other player) doesn't need to have all objects in sync (particles and missiles for instance). Even if it would be physics based, you'd simply display fancy explosions on the client, but the health bar wouldn't move unless the server said so. I think you only need to send player's messages (or "keystrokes") and the other side will figure whatever they mean. You're right about the compression, but you don't have to check the packets for integrity if youre using TCP, since the protocol itself guerantees error-free transmission.
  8. Well try it and see how it works. It might also help to send all messages at once in a single packet (compressed if possible). Microsoft recommends to keep your bandwidth under 64 kbps, which isn't that much (depends on your desired network framerate). But I'm sure you'll make it work It's sad with DB going to be Vista only. I have recently downgraded to WinXP, since Vista managed to destroy themselves through some auto-update (I suspect .NET service pack being the culprit). I hope they keep DX9 though.
  9. I mentioned multiplayer because FreeOrion has currently no AI (or at least no noticeable AI), so it's basically only a multiplayer game. About networking. You can basically send packets using TCP or UDP protocol. TCP guarantees that packets arrive (and in the correct order) and UDP doesn't guarantee anything and just shoots packets through (nad thus doesn't lag) and it's up to the programmer to deal with data-loss or incorrect ordering of packets. There are of course some libraries that solve these problems, but most of them are C++ only Actively waiting for confirmation might work nicely for 2-player TB game, but you'd still have to deal with realtime for the combat simulator. Do you know how is the networking implemented in darkbasic? Does it use TCP or UDP? Or some hybrid system (they might try to prioritize packets and the most important send over TCP while the most time-critical through UDP)?
  10. Yes. And what if the game server has few second lags between each turn (Ai, networking and stuff)? Or what if the server time per turn isn't capped to a pre-set value and AI can think all the time it wants (in other words time between turns isn't constant)? Rebellion has fast, yet extremely stupid AI. Similar problem dragged down Ascendancy. Isn't this one of the main reasons for the remake? Besides as far as networking goes, TBS games might use TCP for their networking layer, which is by it's nature unsuitable for RT games (it actively waits for undelivered packets, while blocking the network stream). Of course, it would be best to check FO's source before making any assuptions
  11. Tofu, I'd recommend Python for starters and if you're interested in writing 2D games, you might want to check out Pygame library. Python is imho the best choice if you want to learn programming, since it's basically a pseudocode, easily readable and mainly doesn't force you to use any specific programming paradigm (eg. both C# and Java enforce object oriented programming even if you don't have the slightest idea what the heck that means). If you'd be pining for Windows.Forms or .NET in general, there is also a version of python called IronPython that runs on Microsoft's CLI (Common Language Infrastructure). Some links: Python - http://www.python.org/ PyGame - http://www.pygame.org/news.html - pygame IronPython - http://www.codeplex.com/Wiki/View.aspx?ProjectName=IronPython and of course a tutorial - http://docs.python.org/tutorial/ Wiki: http://en.wikipedia.org/wiki/Python_(programming_language) http://en.wikipedia.org/wiki/Pygame hope that helps PS: there's a huge theory about artificial intelligence and games (chess, checkers, poker, canasta, even computer games ) however one of the most crucial points is to abstract the state into numbers and be able to say which state is better than the other. this is usually a weighted sum of certain factors - number of houses, player's money, upgrades on houses, streets, special buildings, distance from the start, etc. (I don't remember monopoly exactly). and then the AI basically examines all possible actions and chooses the best one according to this function. this is the simplest AI possible (and probably very stupid), the real fun starts when you try to think multiple turns in advance and take into account other players and the random element (dice). Hmm, yes, AI for monopoly is difficult. Othello (Reversi) is much easier.
  12. Good to see you alive then. I still keep occasionally checking your devblog But what about community coders? If you have six coders in the community, let them work on the engine separately and choose the one that looks best is IMHO a bit silly approach (and a terrible waste of manpower). Of course everyone is (de)motivated (eg. the more solo projects are here, the more I want to quit and stop wasting my time ) by what they can see and play, so artists won't be eager to create assets for a game that is not even available for public testing. But someone needs to write that game and that's best done in more people (even if it uses programmer art as placeholders), not the other way. But every team requires a team leader, which is something this community is lacking. E is right about the chiefs and indians, it appears to be the curse of these communities. I have to admit I envy you your freedom with your TWE project. I guess I'm more interested in the engine design rather than the game itself :-/ There will be enough Rebellions for everyone after all
  13. Hmm, hmm, basing your game on 3rd party code will surely give you a nice boost, but it definitely has it's pitfalls. Eg. FreeOrion is pure turn based strategy, you'd have to hack around a lot to make it work realtime (for combat simulator) - don't forget that you'd probably have to hack even the network code. And when you have that, you'll have nightmares from maintaining your code. You'd either have to fix bugs left over by the FreeOrion team, or carefully watch their changelogs and try to merge their patches with your hacked version. And of course your code will be a mess since you'll be basically writing workarounds around their code structure which was designed with slightly different purpose in mind. But if you really like FreeOrion then perhaps it would be best if you helped it's devs, there's already enough solo Reb2 projects :-/ There's no point in starting another one, unless you could convince people to work together. Btw. what I really like about FreeOrion is their wiki and design document(s), pity they're stuck on the 0.3 version since I can remember.
  14. Emulator (VirtualBox, VMWare, VirtualPC, etc.) with 32bit WinXP works always
  15. Hmm, I didn't get any PM from you at all. It's a pity Slocket wants to work alone, since he actually seems to know what he's doing (unlike some others ) JanDeis offered to help my project couple of times, but his attention span seem to be quite short and he also has a habit of not replying to emails. Check out your "outbox" folder, if your messages are still stuck there, it means they haven't been delivered (or read?), if they are in the "sent" folder, they should be successfully received by the recipient. I don't use MSN (I'm google user ), but I'll write you an email.

Copyright (c) 1999-2022 by SWRebellion Community - All logos and trademarks in this site are property of their respective owner. The comments are property of their posters. Star Wars(TM) is a registered trademark of LucasFilm, Ltd. We are not affiliated with LucasFilm or Walt Disney. This is a fan site and online gaming community (non-profit). Powered by Invision Community

×
×
  • Create New...