Jump to content


  • Content count

  • Joined

  • Last visited

Community Reputation

8 Neutral

About Blade

  • Rank

Recent Profile Visitors

1,033 profile views
  1. I think you are getting confused, wine doesn't run under win98. If I wanted to play it on win98 I'd just run it native. Me thinks you need more practice with this computing malarkey.
  2. You make these pronouncements, yet already admitted you know next to nothing about programming. Nowadays you could write a more flexible and lightweight engine? You could back when Generals was written and indeed it seems it was quite flexible since they managed to get 7 games out of it if you count expansions. Lightweight? Why do you think you could write a more lightweight engine now rather than then, if anything engines should have been more light weight back then because they couldn't rely on having multiple CPU's and the shed loads of memory and GPU compute that we can take for granted now. That said, maybe generals can be optimized more, I doubt they did more than they needed to to ship it working on systems that met some average spec back in the day. Frankly is seems like you are just trolling and looking for an argument, do you even C&C bro? What do YOU think I should be spending my time doing?
  3. I have less interest in writing my own game engine than I do in making an version of an existing engine that can be ported to other operating systems and patched effectively to fix bugs the original developers/publishers never go around to. Your understanding of Java vs C++ portability is inaccurate. Java in theory can be compiled once and then ran anywhere the JRE is available with some penalties usually in terms of performance because it is compiled to java byte code, machine code that doesn't have a physical machine that runs it, it is instead processed by a kind of virtual cpu that runs on different physical cpus (and is probably written in C or C++). C++ on the other hand is always compiled to a real CPU machine code. Apart from calls to the platform API to do things like open files, enumerate directories and handle input, most of the game engine is portable and can be compiled against many platforms and CPU's and will behave the same (more or less). It can be made more portable by writing it against wrapper APIs that abstract the platform differences such as SDL, QT, wxWidgets and the like rather than against the platform API directly (plaforms such as windows, macos, linux, android and such).
  4. The wiki is open for anyone to contribute to and unfortunately the project has an over zealous fan Zexaron who wrote those pages. I'll probably put a disclaimer on the main wiki page or something as we don't want misunderstandings like that to put people off contributing. I've not done any actual work on the way the in game view is rendered yet and I assure you I would rather ask people who knew more than me about it than spout nonsense on the wiki that I wasn't sure was accurate. There seems to be no end of attempts at an open source SAGE engine clone, this one is different to all the rest in that its attempting an accurate bottom up recreation like OpenRCT2, replacing the original game one function at a time until the entire thing is recreated in C++. Good thing about this approach is that you could build the code and play the game now. You wouldn't be able to tell much difference right now of course, so from a player POV this isn't all that useful, but for development it makes it much easier to verify the new code behaves as expected. I can't guarantee it will get any further than the other attempts if I get burned out and I'm also working on RA++ as well. Additionally it will make documenting the file formats more accurately possible so it will provide additional resources for people to build modding tools for the game, though thankfully it is reasonably well covered already.
  5. That quote either shows a misunderstanding by DCoder and Renegade of how those classes are intended to function or is just a flippant comment by him reflecting his poor opinion of the Westwood coders. That "MouseClass" related to handling the drawing state of the mouse in the context of handling input and drawing of all the elements of the game screen. A deep inheritance like this was a common design pattern at the time the original games were written and is probably present in other contemporary games that haven't had their code examined in the same detail. It isn't an example of bad coding as the quote makes it appear. The inheritance is not intended to imply a "type of" relationship that introductory OOP courses use to relate the OOP concepts to real world examples. Instead it represents discreet elements of the final object that are all tightly coupled to each other. Modern coding practices would probably have them all be friend classes of each other and have instances of them as members of a containing class to achieve the same result.
  6. I've just pushed the beginnings of a Zero Hour reimplementation project to https://github.com/TheAssemblyArmada/Thyme if anyone is interested in contributing to such a project. The project is using a similar approach to the one recently used successfully by the OpenRCT2 project. That is, the reimplementation is initially being implemented as a dll that is injected into the game run time that replaces the games functions with new implementations as they are written, allowing it to be reimplemented a bit at a time. I've already reimplemented the custom memory allocator the game uses as well as a couple of string classes. Its very early days for the project, but if anyone has some C++ knowledge and is interested in getting involved, drop by the #thyme channel on freenode.net IRC. When some significant progress has been made it should become possible to fix engine bugs and add additional features to the game.
  7. You are tripping if you think Windows 2000 was a bad OS, I think you are confusing it with Windows ME. 2000 was a rock solid NT4 successor. It did lack a lot of the compatibility hacks that Windows XP had to make sure old games ran though. 2000 was where they were supposed to switch exclusively to the NT kernel, but they botched it and released ME as the "consumer" edition which was universally reviled. Your review of Windows 10 comparing it to macOS is also a bit uninformed, things like linking to your cloud account and having an app store are features lifted directly from macOS.
  8. Didn't a recent windows update blacklist the copy protection driver that Generals uses in windows 7 like it is in 10?
  9. RedAlert++ Has Been Announced

    The OpenRA engine is nothing like the RA engine under the hood. Its designed to be moddable such that it can come close in terms of game play, but some of its behaviours are quite different. It would also require modification to load the original games content, particularly the single player content and custom multiplayer content that people have developed over the years. The RA mod on the OpenRA engine is more like a total conversion than a re-implementation, albeit on an engine written specifically for the purpose. The new project is aiming to be something like OpenDUNE but for Red Alert.
  10. A command line Mix editor

    Check out https://github.com/OmniBlade/ccmix where I've implemented reading and writing of the encrypted header using a crypto library rather than relying on the almost unfathomable XCC code. There is also code there for handling the LMD and GMD and if you intend to allow creating mix files from scratch, please make the addition of the LMD optional. If your C++ isn't too great I can explain the structure of the encrypted header to help you implement it instead. I assume there are crypto modules available for python that provide raw RSA transforms and Blowfish.
  11. There are a number of things that have to be changed in an RA2 mission to allow them to work in YR. You have to adjust the index used for houses in triggers due to the addition of YuriCountry, so any indexes beyond that one are +1. There is also a change in the anim list so animation indexes above a certain number also need adjusting. Adjustments to RA2 style urban combat within maps also needs removing. That is just off the tope of my head, I'm sure there are other things.