Fallout 2 Community Edition 1.2

Discussion in 'NMA News and Information' started by Proletären, Jan 20, 2023.

  1. Proletären

    Proletären Vault Fossil
    Staff Member Admin

    Mar 15, 2012
    Fallout 2 Community Edition is an ongoing open source project. Our forum thread for Fallout 2 CE and Fallout 2 RE can be found here.

    Earlier today version 1.2 of Fallout 2 CE was released.

    January 2023 (version 1.2)

    Welcome to the January 2023 release of Fallout 2 Community Edition. There are many updates in this version, here are some key highlights:

    • Improved rendering - Significant boost to performance on large resolutions (and battery life on mobile devices). See #165 for tech notes.
    • iOS support - Yes, Fallout 2 can be finally run on iOS (albeit not hassle free, see readme for installation instructions). The controls are far from being perfect, but at least it runs smoothly both on iPhone and iPad (#167).
    • Worldmap Improvements - A couple of enhancements that makes worldmap more visually appealing.
    • Combat and AI - Some fixes to expected combat stuff and improvements to AI.
    Despite the integration of Sfall being a top priority, there is not much progress here.

    @sonilyan implemented support for wide interface bar (#188). Together with side panels (fa058f2) you can enjoy familiar Sfall look in CE. One thing to note is that appropriate art should be unpacked and stored in your data directory. I'm sure many of you don't understand what that means, just hold your breath for next release.

    Notable improvements:

    • Stretchable splash screen (8a4ce6c)
    • Game mode tracking (dc90beb)
    • Custom message lists support (fe9ba91)
    • Dialog options numbering (897ff2b)
    • Some scripting functions (tracked in #200)
    Worldmap Improvements
    One of the coolest update and my personal favorite for this release - fade in/out animation when using worldmap (cc1562b).

    Notable improvements:

    • Added shadow to city labels (248d6df)
    • Fixed car disappearing after using town map (e02dcdf)
    • Fixed special encounter blinking icon (95cc863)
    • Fixed worldmap position calculation (3ec827d)
    • Fixed some visual artifacts (9976728, b5701fb)
    Combat and AI
    @drjfaust fixed several combat bugs with #204 which were unnoticed since Reference Edition. With ad38607 wandering NPCs will no longer ignore player and will join the fight on sight.

    There is an improvement to "Whomever is attacking me" party member behaviour (3425926). The party members will no longer switch targets randomly (especially in big fights). Instead they will try to keep fire on their initial target as long as this target keeps attacking dude.

    In addition to this, there are changes to how AI is using drugs (0e11569). It includes Sfall fixes and improvements and adds some randomization to the picking process. Instead of using first available drug (according to internal order of items in inventory), we group drugs into buckets (primary desires and everything else) and randomly pick from one of the buckets.

    Some improvements and fixes have been made to run Nevada and Sonora. These mods (at least their original versions) do not require Sfall, but have unexpected scripting style, which resulted in several crashes. Please open up an issue if you've completed either Nevada or Sonora.

    There is a separate list for tracking progress towards Olympus support (#200). Most of unimplemented functions are used in unnecessary global scripts like party controls, so it's likely playable.

    Some examples of errors discovered and fixed:

    • Fixed testing pointers for nulls (ad9b858)
    • Fixed ini section parsing (a70912d)
    • Fixed color setters (01f264e)
    • Fixed selecting scripted windows (9c6daa4)
    • Fixed setting scripted button handlers (8ee0f47)
    • Fixed storing pointers in global variables (6c03e4e)
    @sonilyan identified one of the memory alignment issues (#187). This kind of bugs usually lead to crashes, but totally compiler/environment/processor dependent. This explains why the game crashed on some Android devices.

    Eventually more undefined behaviours were found, the last one was fixed with 2714dc1. Thanks to @APAmk2 for promptly confirming this issue is finally resolved.

    #206 added support for on-screen keyboard.

    There are over a hundred of other fixes and improvements which can be found here. Thanks everyone for your contributions to Fallout 2 Community Edition.
    • [Rad] [Rad] x 4
  2. Mr Fish

    Mr Fish Painstakingly Based & Cringe

    Sep 11, 2010
    what it do?
  3. Proletären

    Proletären Vault Fossil
    Staff Member Admin

    Mar 15, 2012
    There's a limited amount of information so I'm a bit unsure. I'm also unsure about the difference between Fallout 2 RE and CE.

    Hopefully someone who understands can clarify.
    Last edited: Jan 20, 2023
  4. Eumesmopo

    Eumesmopo Learned to love the bomb

    Dec 6, 2012
    I think the 'About' section in the right is the full answer; it's open source Fallout 2. If you know C++ you can use this to modify the main source code of the game.

    Presumably it was programmed from scratch to reproduce the behaviour of the actual original Fallout 2 executable and it's not the true source code, only a reverse engineered version of it.
    • [Rad] [Rad] x 2
  5. Proletären

    Proletären Vault Fossil
    Staff Member Admin

    Mar 15, 2012
    Cheers! I suck at navigating GitHub.
    • [Rad] [Rad] x 1
  6. Eumesmopo

    Eumesmopo Learned to love the bomb

    Dec 6, 2012
    Yeah it's not really very intuitive unless you are really used to it and people don't always write very descriptive readmes either.
    • [Rad] [Rad] x 1
  7. alexbatalov

    alexbatalov First time out of the vault

    May 4, 2022
    CE is an open source implementation of Fallout 2 which works on modern OSes and mobile devices (Android and iOS). It's based on RE, includes some Sfall features and a bunch of home-brew improvements. This version is in active development and is constantly improving.

    RE is aimed at developers who are interested in how old games were made and reverse engineering in general. This project has very clear goal which I consider achieved.
    • [Rad] [Rad] x 11
  8. Proletären

    Proletären Vault Fossil
    Staff Member Admin

    Mar 15, 2012
    Thank you for your work! Something interesting is bound to come out of this.
  9. Iprovidelittlepianos

    Iprovidelittlepianos Vault Dweller

    May 12, 2020
    So this will let me play Fallout 2 on my phone?
  10. Hardboiled Wanderer

    Hardboiled Wanderer I'm just here for the guzzoline...

    Apr 24, 2016
    The Community Edition can do that, yes. It's not an emulation like many other mobile implementations, this is a native Fallout 2 code running right on your device. Tested the september release of CE myself, worked flawlessly for me.

    First of all I'd like to thank you for your efforts. I've been following your work for a while and I really admire your skill and dedication - especially with the Reference Editions for both Fallout 1 and 2 and the noble goal of researching and preserving of the original source code, which you definitely have achieved by now.

    I'm also very interested in your recent work on Icewind Dale 2, good luck with that huge beast!

    I hope you don't mind one question - have you ever considered "doing your magic" on Fallout Van Buren tech demo engine? I've spent 5 years recreating it in Unity, with rather satisfying results, yet I've always had this bug in the back of my brain that kept telling me that the original Jefferson Engine deserves to be rebuilt. It's a dead branch of gaming technology that could have sparked a new breed of RPGs - 3D, but still as aesthetically pleasing and beautiful as their 2D prerendered predecessors. The number of SLOCs is lower than IWD2 engine as far as I know, yet the engine obviously is much more complex in terms of how many systems and third party includes it features.
    I know a bunch of guys who also share the same passion and have been working on reverse engineering of engine's proprietary files at least, most of which are already done at this point and time, so if you ever happen to stumble upon VB, there's already some research done to help.

    Don't mind me rambling about VB though, keep up the good work you're doing. Best of luck to you!
    • [Rad] [Rad] x 7
  11. Iprovidelittlepianos

    Iprovidelittlepianos Vault Dweller

    May 12, 2020
    So I just tried this out for my iPhone, and so far it works like a charm. Some ability to use the keyboard hot keys would be nice (maybe put useful buttons like Enter and Shift in that dead space on either side of the screen), but the game is certainly playable.

    Oh, I also have that glitch that prevents music from playing, which I also had on my PC version but found a fix. Edit: Apparently there are additional files for download on the page created by other users that potentially fix these problems
    Last edited: Jan 23, 2023
    • [Rad] [Rad] x 2
  12. Slaughter Manslaught

    Slaughter Manslaught Vault Senior Citizen

    Dec 11, 2006
    Wow this is fantastic coding work! From coder to coder, congratulations!
    I assume the CE is implementing SFall functions natively within the code, yes?
    That would increase their stability, I assume?

    Considering how long this has been around, this project is legally kosher, right? When I saw your first release, I honestly wrote you off and expected you to get nuked from orbit by Bethesda in a week.

    Pity it uses C++, if it used C# I would jump straight away into collaborating.

    Question: Any chance the CE can implement some sort of higher-level language for modding? Kinda like how Paradox does it for their games. My memory also sucks but I remember a game that let you mod it with Lua.

    If this is legally kosher and will last, I think there is immense potential here. As much as say, Open X-COM project.

    (now all we need is an open version of SMAC)
    • [Rad] [Rad] x 1
  13. Gizmojunk

    Gizmojunk Carbon Dated and Proud

    Nov 26, 2007
    Well... Legend of Grimrock 1 & 2 allow tremendous modding potential using Lua, and there is an unofficial beta Steam version of Grimrock 2 (from the developer) that truly opens up the internals via new hooks that are not in the base game.
  14. Eumesmopo

    Eumesmopo Learned to love the bomb

    Dec 6, 2012
    That is a LOT of games actually. Lua was developed mainly to be used as a scripting language for C/C++ and it's easy to implement and works very well for this purpose, hence it is very often used this way in lots of games.