Modding Requests from SupCom Modders

Discussion in 'Planetary Annihilation General Discussion' started by KNight, August 19, 2012.

  1. DeadMG

    DeadMG Member

    Messages:
    217
    Likes Received:
    8
    Appeal to authority fallacy. Java is the worst language ever designed. It's even worse than COBOL or something like that. The only language worse than Java is PHP.

    Unless the sandboxing is built right into the libraries, which for C#, it is. Remember, C# and it's libraries were designed with the intention of running potentially untrusted code or in untrusted environments.

    I agree. I'd much prefer a strongly statically typed, structured language over a pointless "AMAGAD U CAN DO IT AT RUNTIME but there's no reason you'd ever want to and most of the extra possibilities are things that you really don't want to be possible" language.

    Ultimately, my main choice would be Cling. Nice fast structured language, good concurrency support, can be interpreted or JIT-compiled, etc.
  2. thygrrr

    thygrrr Member

    Messages:
    252
    Likes Received:
    1
    Type safety is a good thing in my eyes... Most scripting errors come from cluelessness about types. But duck typing / punching would be really cool for modders... So Python ftw!

    I'm a little bewildered deadmg considers the stackless python modules 'arcane', I gotta check out some other ways for lightweight concurrency because all the heavyweight threading I did with Java and pthread in Cpp was awful compared to stackless. Stackless is a paradigm more than a library. And modern lightweight concurrency is always a bit arcane when you are used to semaphores and mutexes...

    But then, deadmg spews blind vitriol about Java, which is a pretty decent language. I'll take that with a gain of salt, seeing I have 10+ years of Java and 10+ years of C++ experience. And Java is more practical, if not as versatile as C++. C# is the better Java though, it's elegant where Java is clunky, and it's slick where C++ is deadly.
    Last edited: August 28, 2012
  3. DeadMG

    DeadMG Member

    Messages:
    217
    Likes Received:
    8
    Using pthreads in C++ is about equivalent to writing your own malloc on top of the OS-level page-size-only memory allocator (like VirtualAlloc) and using C-style memory managemet everywhere based on your own custom malloc and complaining it's hard, whereas everybody sane uses std::vector. In this case, you should check out Thread Building Blocks from Intel or Parallel Patterns Library from Microsoft.
  4. thygrrr

    thygrrr Member

    Messages:
    252
    Likes Received:
    1
    I didn't say pthread was sensible, it's just what I worked with the most (and VCL threads). boost::thread is what I'd recommend off the top of my mind if asked to.
  5. DeadMG

    DeadMG Member

    Messages:
    217
    Likes Received:
    8
    All I'm saying is that C++ has far better threading offerings (even far better than boost::thread) which are simple, easy to use, and very fast, and comparing any library which is intended to be used by the end-user, instead of as an implementation detail, is an extremely unfair comparison.

    The PyPy page on Stackless made it sound like assembly stack frames, but mutable and concurrent.
  6. thygrrr

    thygrrr Member

    Messages:
    252
    Likes Received:
    1
    Looking into TBB now :)
  7. lthawkeye

    lthawkeye New Member

    Messages:
    19
    Likes Received:
    0
    THIS

    essentially this has been beaten down throughout this thread and i, as always, am late to the party.

    But easy transfer and installation of mods is essential, setting up custom games in supcom was a huge hassle because of not being able to easily set up/install some mods properly.

    If anything, i feel that when a person joins a modded game they should be prompted to download the mod(automatic download would be awesome here) or give a link to a download, to have the second option you would have to enforce modders to upload the mod to a hosting site/location and provide a link before uploading it to the "Vault" so to speak
  8. neutrino

    neutrino low mass particle Uber Employee

    Messages:
    3,123
    Likes Received:
    2,687
    The goal is to have the server be able to distribute mods. Basically the current thought is to have the game servers also be a webserver so you can hit it up with a browser for admin/setup type stuff. In addition since all of our clients talk web services they can just directly download files from the server.

    I'm going to start adding a disclaimer to all of my posts that this is just the current thought and things could change. No warranty is expressed or implied and everything is always subject to change.
  9. DeadMG

    DeadMG Member

    Messages:
    217
    Likes Received:
    8
    During pre-pre-production? Should hope so :p
  10. lthawkeye

    lthawkeye New Member

    Messages:
    19
    Likes Received:
    0
    I think that would probably be really great, ofc i know this is only a suggestion ;p

    the main idea is just a quick and easy way to distribute and install mods, without a system like this modding will get a serious snag when trying to play online games, like it did with supcom.
  11. KNight

    KNight Post Master General

    Messages:
    7,681
    Likes Received:
    3,268
    To be fair, with modding a big feature that is actaully talked about in interviews and such and with Uber having total freedom to do whatever they want we I hope we end up seeing more "out of game support" for modding, stuff like mod highlights on the PA site or right in the game kind of thing.

    Mike
  12. DeadMG

    DeadMG Member

    Messages:
    217
    Likes Received:
    8
    Under our highly experienced and expert guidance (charged at $300/hr), I have faith that Uber will produce, at minimum, an utter failure.
  13. ooshr32

    ooshr32 Active Member

    Messages:
    749
    Likes Received:
    141
    Add it to your sig. ;)
  14. thygrrr

    thygrrr Member

    Messages:
    252
    Likes Received:
    1
    300/hr seems about right at this point. :)

    I'm sure Uber will only listen to the right people and then do something radically better anyway :D
  15. yogurt312

    yogurt312 New Member

    Messages:
    565
    Likes Received:
    2
    Lets make sure they can still see the ground from the pedistal we put them on.
  16. KNight

    KNight Post Master General

    Messages:
    7,681
    Likes Received:
    3,268
    but if we put them on a pedestal how are they supposed to work on PA?

    Unless we put the whole building on a pedestal!

    Mike
  17. thapear

    thapear Member

    Messages:
    446
    Likes Received:
    1
    In SCFA I mostly occupied myself with modifying the UI. I hope that in PA the interface will be as highly modifiable as it was in SCFA and its modability will not be overlooked in favor of modability of the gameplay.

    Specific features I missed in SCFA when modifying the interface were:
    - Access to visible (enemy) units.
    - Access to static entities. (Example: wreckage)
    - Ability to transfer data from client to client without involving the SIM state.
    - Ability to issue orders to owned units. (Aside from a select few)

    I have not used Python myself, but having used LUA a lot I can still disagree with people stating that LUA is a "messy" language. In many programming languages (LUA included) it is more the programmer who writes the code than the language itself that determines the readability of code.
  18. coldboot

    coldboot Active Member

    Messages:
    447
    Likes Received:
    112
    It depends on what tools the language gives the programmer. If you compare Perl to Python, you will notice that Perl programmers tend to, as a habit, not write object-oriented code or properly marshall their parameters.

    If the language is designed well, you will see better code coming out of developers a whole lot more naturally. Python is one of those languages.
  19. neruz

    neruz New Member

    Messages:
    2
    Likes Received:
    0
    Chiming in.

    Supcom's API was a huge mess, and unfinished, mostly because too much of the game was written in Lua.
    I wouldn't mind if they used Lua, as long as the UI and layout isn't written in it, that said, I wouldn't mind Python either, just don't ever ever use javascript.
    Why java was mentioned I'm not even sure.
    Noone in their right mind would ever consider binding java (blah) or any jvm-based(groovy, scala = awesome) language to c++ code to use as a scripting language.

    On the I/O part, it's really only needed to download mods in-game, which can be sandboxed, no I/O API needed. Everything else can be done with a sandboxed storage file.

    +1 for sockets, or anything that I can use to communicate with 3rd party apps.

    That is all.

    (Though I don't really care about modding now. Ruined my favorite game, can't play FA without seeing code.)
  20. tentaculartoaster

    tentaculartoaster New Member

    Messages:
    15
    Likes Received:
    1
    Disclaimer: I'm not a SupCom modder, though I've followed the TA, Spring RTS Engine and SupCom modding communities from their inception. I've dabbled in modding for various games, and suggested many things: sometimes they got implemented, and sometimes I had to say oh ****, what I suggested and they implemented sucks after all :p . Game design is hard.

    About the file transfer thing, the Zero-K lobby and SpringLobby have all players serving up the games and maps they have to other players on a torrent automatically. Transfer speed is very reasonable even for multiple hundreds of MB, and download speed improves as mods get more popular. The main source to seed the torrent can always be a mod repository I guess. (BTW for the easily scared, torrents are ok to include in a game client: WoW, LoL, World of Tanks and Tribes all use them.)

    Otherwise here are my other modding feature wishes, based on what I could see was lacking in modding possibilities in TA and SupCom:

    - Related to the above: Give maximum support to community balance patches, make using them as easy as playing vanilla. Most of us just want cool toys to blow up (i.e. campaigns, or single or coop skirmishes vs an AI), but competitive players love their balance, and the best way to achieve that is probably by letting several community-made balance mods compete.

    - User-made single-player campaigns. Just give us a good way of scripting missions and chaining them together with some briefings, and users can make loads of nice TA-style campaigns.

    - Players are gonna want to install ALL THE (good) MODS. A good infrastructure to detect conflicts between mods and merge files if possible is pretty essential. See for instance the amazing Wrye Bash tool from the Oblivion modding community... it makes managing 300 mods possible.

    - My dream mod hosting site would index the content of mods people upload, so that when I think of downloading a mod, it would automatically compare it with those I have installed and tell me of any conflict before I even press Download (or I could make a wishlist online and it'd point out conflicts) .

    - Transport boats were cool in TA but missing from SupCom. Transport subs would be great for surprise attacks too. And why not transports inside mega-transports... you get the idea. Modding flexibility in this area would be great! I think PA is heading toward this kind of super-modular approach anyway.

    - Give us as much source code as you can. Civ IV is one of the games with the best, most ambitious mods out there (Fall from Heaven comes to mind, but there are several more with similar scale), and that's because they gave fans the C++ source of their gameplay DLL.

Share This Page