• Moose

simmaster07

Member
  • Content Count

    894
  • Joined

  • Last Visited

  • Most Liked  

    4

5 Followers

About simmaster07

  • Rank
    City Slicker
  • Birthday 03/16/1997

Contact Methods

Profile Information

  • Gender
    Male
  • Location
    Long Island, NY
  • Interests
    Web development, programming, music, and video gaming. Shouts out to Lupe Fiasco.

Recent Profile Visitors

4,411 Profile Views
  1. The problem is that EA doesn't have any public contact information for their legal departments, which we'd need to request legal permission for reverse engineering. This means we'd have to pay for and hire a lawyer anyway to submit such a request.
  2. From EA's legal page, the closest EULA available is SimCity Societies, which has pretty much the same boilerplate. Either way, if the EULA given to me by Steam is the one I'm agreeing to in order to use the software, I'd be bound by its terms anyway.
  3. It's not even so much as modifying existing game code. If we take a strict interpretation of the EULA's RE clause, it also prohibits debugging and disassembling, both of which are extremely valuable in order to make DLLs like city hall upgrading and extra cheats. I could try and bring this up with an EFF attorney if they call next week. They do have a history of supporting such cases though, namely Blizzard v. Bnetd (which failed in part because the EULA was more restrictive and expressly forbade all reverse engineering under all circumstances).
  4. It seems like this would be more in the interest of avoiding circumventing the DRM and redistributing .exes that had it removed, since that'd be the only way to distribute modifications made directly to the .exe. Finding pro bono representation through my local bar association or the EFF and similar organizations would be the way to go in that scenario. Failing that, yeah, I suppose we would have to just surrender to EA's legal team. ᖍ(ツ)ᖌ Not really; for Simtropolis, at least, DMCA safe harbor provisions would absolve them of legal liability for user-generated content if they didn't know it was infringing, and it'd just get taken down quietly. Either way I wouldn't have planned to document anything of the sort here anyway. It would be, though that's far beyond the realm of possibility as far as I can tell. I can't find any legal contacts for EA, and even if I could there'd be a lengthy formal code release process to go through according to Paul Pedriana, and that's still assuming that they agree to allow reverse engineering. There's also the possibility that they decide to impose restrictions like non-disclosure agreements that defeat the purpose of doing so, which isn't helpful if the EULA is already permissive enough for a fair use defense. However, there's a limited amount of progress you can make in developing a framework for DLL mods before you have to disassemble parts of the program, which the EULA may or may not permit. Debugging for mods like SC4Fix falls under the same umbrella, hence why there hasn't really been much progress on either of those projects for months. This would require them to basically forfeit any future profits and would involve an even more convoluted legal process, so I don't see this happening either.
  5. I don't know of any other objectives they necessarily had in mind, but it's worth noting that the quoted text is actually from the "Whereas" section providing background justifying the directive. The full text of the directive can be found here and Article 6 is the legal text:
  6. Hey everyone, This thread doesn't deal with any technical aspects of modding but mainly serves to discuss one of the commandments of modding here, "Thou shalt not reverse engineer." Reverse engineering SimCity 4 has generally been considered taboo, citing EULA restrictions and taking a conservative stance to minimize legal risk. While I'm not a lawyer (and none of this is legal advice or should be construed as such), it may be worthwhile for us to be more diligent in understanding and asserting our right to reverse engineer. The exact phrasing in the EULA is as follows: But notice that unlike most other EULAs with anti-RE provisions, SC4's provides for some legal exceptions. At minimum in the U.S., section 1201 of the DMCA could allow reverse engineering and circumventing copy protection in order to achieve "interoperability" or information exchange with some independent program. This would mean that trying to fix issues in SimCity 4 that prevent it from working properly with Windows 10 — an independently created program — would be legal. In the most ideal scenario, it's possible that the fair use doctrine in copyright law would be considered an applicable law, which would give us broad license to reverse engineer the game as long as we follow fair use guidelines. Likewise, for European citizens there's EU Directive 2009/24, which is very similar to the U.S. DMCA exception and states: I can't say for certain whether this is the case, but I am in contact with the Electronic Frontier Foundation (which published this wonderful FAQ on the legal issues of reverse engineering) to try and talk to one of their attorneys about this EULA clause and what it means for our right to reverse engineer, and I will post back here when I have updates on that.
  7. I mostly thank Aspyr for not removing the debugging information from their original Mac release.
  8. I haven't done much more than superficial testing, but I built a modified version of my extra cheats DLL to try zoning with the four unimplemented zones (airport, seaport, spaceport, military), and surprisingly the game doesn't crash! The results are nonetheless disappointing, though. This is the zoning tool icon for airports. Zoning tool icon for seaports. Zoning tool icon for spaceports and military zones. The spaceport and military zones were probably cut earlier since they don't even have unique icon assets. These zones appear to have normal mechanics such as zone size limitations: In the zone view they all appear as orange ploppables, probably as a fallback: In region view, however, the airport and seaport zones (top left and center, respectively) show up as airports and seaports with no functioning buildings. The military and spaceport zones (far right and bottom left, respectively) appear as ploppable buildings. The SC4Devotion wiki article cited says "The Air Force base is the only known building which can grow on the unimplemented Airport zone without modification, which it is a Stage 3 building for." I don't think this was actually tested as a growable since I'm not aware of any other means for placing unimplemented lots, and I'd bet that someone saw that it had some property that indicated that it would grow on that zone and assumed as much. I figured I'd test this by placing a military zone in a city that fulfills the normal reward requirements and seeing what happens. Nothing ever actually grew there. I followed that up by demolishing an airport and using an airport zone in its former blueprint; nothing grew there either. The mechanics for growable lots are largely governed by the "tract developer" code, and the airport and seaport developer code only deal with plopped buildings, so this isn't terribly surprising in retrospect. What steps could be taken in a DLL to create working tract developers for these zones? Well, you could have a service running when a city is active that, on every tick, checks for those special zone types and tries to find candidate lots designed to grow on them to build there. This sounds relatively straightforward on paper, though the problem of figuring out which lots to place probably makes this more complicated than is currently practical. SC4's own tract developer tries a couple of different methods of picking zoned areas for a lot (aggregation and subdivision) and scores and sorts lots to try to find the best lot to place, and even this is still susceptible to issues like the repetition of Wren Insurance. If you want to download the DLL I used for testing this you can go here. For what it's worth, there's also no way to extend the number of possible lot types beyond the pre-existing 16 (though you could reassign 10-13 if you managed to overcome the hurdles mentioned above). That limitation is hardcoded in a few different parts of game code and trying to patch that out with assembly hacks would be a lot of effort for something without much reward.
  9. Like, omg, Its SmiMaster.

  10. Hey @weekendgamer, thanks for the heads up! I'm pretty busy with finals at the moment, but when I get a chance I'll upload a new version that doesn't change the titlebar to avoid creating these kinds of conflicts.
  11. It's honestly too soon to tell. I don't think I've gotten through even a quarter of the game's interfaces so it's hard to say if the game's behavior can be modified to that extent.
  12. I did use that source code as a reference, but it's incomplete since it requires a declaration for the cRZCOMDllDirector class, as well as the interfaces for cISC4App and cIGZFramework, so it wouldn't compile. The main breakthrough is the reconstruction of those interfaces.
  13. Hello! I haven't had an opportunity to review the ordinance simulator much, but at a glance this would appear to be the case. All ordinances are hardcoded and need to be registered with the ordinance simulator through the COM interfaces that are coded in. Maxis/EA were kind enough to leave functions to force ordinances to become available or enabled, though. None of this is accessible yet because I haven't reconstructed that interface in my public code.
  14. can you make something that prevents the game from crashing due to too many mods or multi-CPU usage?

    1. Show previous comments  5 more
    2. fredinno

      fredinno

      Windows 10 does not have capability mode, so it's less stable. But yeah, it was just a suggestion. It may or may not be possible, something I acknoledged.

       

      I know it probably isn't possible or worth it.

      You should work on whatever you want, and fix things that are easier to fix.

    3. rsc204

      rsc204

      Compatibility mode isn't really necessary for SC4. I certain don't use it under Win7.

    4. fredinno

      fredinno

      I thought it might be the reason behind some stability issues in my game on WIndows 10. But maybe not.

      It's probably more mod conflicts.

  15. This is actually rather curious because, if I recall correctly, Simtropolis had a Societies section around the time when the game came out.