EagleEye
Members-
Posts
27 -
Joined
-
Last visited
EagleEye's Achievements
Newbie (1/14)
0
Reputation
-
From what I remember, WW regretted putting Kane in the Soviet ending (because they didn't really know what to do with him), but it was EA who retconned it to where RA and TD have nothing to do with each other, and used that as justification for making Generals.
-
It means "a lot" in this context, though it actually means "God's wounds", according to Merriam-Webster.
-
I got it. I haven't sent you a message yet because I haven't gotten far enough on the disassembler to need to ask you for help yet. I sort of want this to be a $20 alternative to IDA (the $519 dollar difference and the ability to output FASM compatible files making up for the comparatively severely limited functionality), but it's not likely seeing as, well, I'm been really depressed lately and that's the kind of thing that kills all the projects you work on. Edit: I'm sorry, ccso.com, but you don't get to put us-flag.gif next to a QR code. You have to pick a decade. Also, price gouging. I feel sorry for any hobbyist who's ever had to shell out any money for IDA. Especially since two people with different versions of IDA can't collaborate, and updating = $$$.
-
I was working on a map editor before, but I couldn't parse the .SHPs correctly because I'm an idiot. If someone could write some (MIT-licensed) code to convert a SHP into a List<int[,]> or List<int[][]>, then I could probably write the rest of the map editor. Everything else should be easy enough, but you need to be able to see the map in order to make sure you're loading it correctly. I'm thinking of making the map editor feel like the game, with a sidebar on the right side, clicking on the logo changes what side is selected (a side without a logo will display GDI's frame for showing the radar, with the side's name), and clicking the "Sidebar" button switches from units/buildings to ground to terrain, the middle of which will be used for the icon (with Solid/Water/Shore/Clear being the "names") and a mouseover will show the full ground in the radar. It's hard to explain, but if I get some time, I'll make a mockup of the UI.
-
Then you better go catch them!
-
Could you post how the .bin file works in this thread (for reference purposes)?
-
There's no public place that I'm aware of, but Hyper will surely send you his database and any documentation he has, though I'm not sure he has any proper documentation. I know for a fact Nyer doesn't, but I've never really talked with Hyper that much.
-
By "disassembly", I meant "reassemblable disassembly". Something that you can turn into an .exe with an assembler. I'm saying that with people like you and Hyper around, Command and Conquer is much more likely to get a reassemblable disassembly than, say, Lego Island or Ultima 9. Though that's still not likely, since you guys have been working around not having a way to reassemble for years now.
-
5 hours? Wow, the longest I've ever had to wait for something to compile was a little under an hour, and I've got a dual core 1.6GHz AMD processor that can't even play Unreal 3 games.
-
The square root problem could be worked around by making a function like this: int SquareRoot(int input) { switch(input) { // case 4096: // return 64; case 16384: return 128; case 65535: return 256; default: return 64; } } (Or you could look up an x86 assembler with a Math library. I've used one when I was trying to make a CnC disassembly.) About the "initialized at start" thing: if you change MapBuffer[4096] to MapBuffer[65535], does the game change at all? Though changing every mention of 64 in the context of MapLength to a reference to a variable, both in finding and repointing, sounds like it'd be a huge PITA. A disassembly would make it a lot easier, but someone would need to make a disassembly first (Though if there was ever a PC game with a community that could make a disassembly of it, I'd say it's Command and Conquer. 1.06, Ares, Arda, OpenDune. Not to mention the various Assembly-hackers here and at PPM/RenX.). Edit: And it works. I have no clue how easy it'd be to implement in ASM, but all a square root needs is addition, subtraction, and a while loop (I have no clue how a while loop works in ASM). Also, I learned 65535 isn't a square root (I'm a moron sometimes). using System; namespace SquareRoot { class Program { static void Main(string[] args) { Console.WriteLine("4096: " + SquareRoot(4096)); //64 Console.WriteLine("16384: " + SquareRoot(16384)); //128 Console.WriteLine("65536: " + SquareRoot(65536)); //256 Console.WriteLine("262144: " + SquareRoot(262144)); //512 Console.WriteLine("1048576: " + SquareRoot(1048576)); //1024 Console.WriteLine("65535: " + SquareRoot(65535)); //0 Console.WriteLine("65535: " + Math.Sqrt(65535)); //255.998046867549 Console.ReadLine(); } static int SquareRoot(int input) { int tosubtract = 1; int subtracted = 0; while (input > 0) { input -= tosubtract; subtracted++; tosubtract += 2; } if (input < 0) { //throw (new Exception("Internal Error: Not a Square Root")); return 0; } return subtracted; } } }
-
Argh, I want to say "just make a variable that defaults to 64 that controls the width and height of the internal map, and set it to the square root of half the size of the .bin file", but I know you'd already be doing that if it were as easy in ASM as: int internalsize = Math.Sqrt(mapfile.Length/2); byte[] map = new byte[internalsize*internalsize]; //etc... Use internalsize in place of hardcoded 64 It's times like this I wish I could understand x86 ASM better.
-
I PMed EA_CIRE and asked him how I would ask EA for official permission to distribute Dune 2000. If he sends me a reply either way, I'll post it here. EDIT: He's looking into it.
-
I was wondering what the community's position on distributing Dune 2000 was. Abandonia says it's Abandonware (and that Emperor is protected by EA until 2017), but Abandonia isn't a CnC site, so I have no clue if that's how the CnC community feels about it.
-
I'd already ported it to C# again my the time I read your post. I also did a speed check on both versions and both take 0 ticks to complete. I'm going with your port, though, because I trust XCC Utilities more than a defunct CnC remake.