IRC logs for #opendune on OFTC at 2009-10-20
            
00:00:32 <proyvind> glx: did you sort out the linking issues with win32 build of libeastwood? :)
00:02:00 <glx> no, and the built dll is not usable in MSVC as it didn't create the corresponding .lib (no symbols to export/no .def file)
00:03:17 <proyvind> d'oh
00:03:23 <proyvind> error on my part to fix?
00:03:43 <proyvind> or you sucking? ;p
00:05:02 <proyvind> could I have your latest patch btw? :)
00:05:57 <glx> for dlls you need to use __declspec(dllexport) for exported functions, or write a .def
00:06:39 <proyvind> oh
00:07:02 <glx> it's easier with gcc for that
00:07:34 <glx> but then python will fail because it was built with msvc
00:07:47 <proyvind> TrueBrain: nice library for ini-reading? not sure what is meant by that, but I have a IniFile class in libeastwood..
00:07:59 <proyvind> glx: cruel windows world.. :p
00:08:55 <proyvind> (I didn't write the IniFile class though, so I don't have that much knowledge about it, it's on my list of code yet to clean up/rewrite)
00:13:08 <glx> http://glx.dnsalias.net:8080/opendune/eastwood.diff <-- that's the current diff, but it seems there's too much in it
00:14:50 <proyvind> k
00:16:11 <glx> ok done some cleaning
00:16:20 <glx> removed EOL changes :)
00:21:59 <glx> windows and dlls is not an easy stuff
00:22:40 <proyvind> I bet!
00:22:54 <proyvind> sounds more like evil stuff
00:24:37 <glx> though I have libeastwood.dll, libSDL_eastwood.dll with corresponding .a (mingw) and I have eastwood.dll without corresponding .lib (msvc)
00:25:06 <glx> so it's not that bad :)
00:25:40 <proyvind> glx: why did you remove inline from delayMillis?
00:26:22 <glx> oh I just wanted to replace the int with void indeed
00:27:02 <proyvind> ah
00:27:03 <proyvind> k
00:27:30 <glx> because msvc doesn't like to convert void to int ;)
00:27:51 <proyvind> hm, there's no std::min with msvc?
00:28:15 <proyvind> (you've changed 'std::min' to 'min')
00:29:13 <glx> min is not in std:: (or maybe I need another include)
00:29:19 <glx> I didn't check too much
00:30:30 <proyvind> should be in <algorithm>
00:31:30 <proyvind> http://www.cplusplus.com/reference/algorithm/min/
00:31:56 <proyvind> maybe I should just do a 'using namespace std;' for compatibility?
00:34:12 <glx> if I include <cliext/algorithm> it fails with another error
00:36:14 <glx> without the include I get the following errors for std::min
00:36:14 <glx> '(' : illegal token on right side of '::'
00:36:14 <glx> syntax error : '::'
00:36:30 <proyvind> hm
00:36:58 <glx> Erreur,...2,...fatal error C1189: #error : STL/CLR can be used only in code compiled /clr, clr:pure, or /clr:safe,...C:\Program Files\Microsoft Visual Studio 9.0\VC\include\cliext\xutility,...6
00:37:05 <glx> and that is with the include
00:37:35 <glx> hmm wrong include used
00:38:26 <glx> with <algorithm> it fails (illegal token and syntax error)
00:39:32 <proyvind> #ifndef _MSC_VER
00:39:32 <proyvind> using namespace std;
00:39:32 <proyvind> #endif
00:39:40 <proyvind> I added this as workaround for now
00:42:45 <glx> ok I solved it
00:42:55 <glx> #ifdef _MSC_VER
00:42:55 <glx> #ifdef min
00:42:55 <glx> #undef min
00:42:55 <glx> #endif
00:42:55 <glx> #endif
00:43:04 <glx> the problem was the macro :)
00:43:06 <proyvind> ah
00:43:22 <proyvind> best thing would probably be to place that one in StdDef.h then
00:45:04 <proyvind> http://pastebin.mandriva.com/14731
00:45:06 <proyvind> looks good?
00:45:44 <glx> not yet :)
00:45:59 <glx> I need to find the right place to undef min :)
00:46:06 <proyvind> k
00:50:46 <glx> refreshed my diff
00:52:41 <glx> setup.py change is to make it able to try to compile (ie find headers)
00:52:49 <glx> even if it still fails
00:53:26 <proyvind> yeah
00:53:36 <proyvind> I've fixed the setup.py to work
00:53:44 <proyvind> elif get_default_compiler() in ('msvc'): compile_args.append(os.environ['CPPFLAGS'].encode('mbcs'))
00:53:47 <proyvind> :)
00:53:54 <glx> 'PyModule_AddStringConstant' : cannot convert parameter number from 'double' to 'const char*'
00:56:24 <glx> reverted my setup.py change and updated the diff :)
00:57:16 <glx> the error says VERSION is not a string
00:58:04 <glx> s/number/3/ in the error message ;)
01:01:21 <proyvind> http://glx.dnsalias.net:8080/opendune/eastwood.diff <- right?
01:01:27 <glx> yes
01:02:29 <glx> hmm Player.cpp align is wrong
01:09:06 <glx> http://glx.dnsalias.net:8080/opendune/eastwood.diff <-- needed change :)
01:19:26 <proyvind> thx
01:19:28 <proyvind> commited:)
01:22:40 <glx> the include moves is not commited it seems
01:23:40 <proyvind> hm, thought I did, oh well, will do
01:23:47 <proyvind> just gotta finish up some stuff here first :o)
01:24:01 <proyvind> wanna encapsulate SDL types in stead of inheriting
01:24:08 <proyvind> :o)
01:24:13 <glx> anyway it's still not usable on windows
01:24:50 <proyvind> k
01:30:13 <glx> TrueBrain: http://devs.opendune.org/~glx/crashes/ crash in A2 (was playing agressively)
02:19:19 * glx goes to sleep, good night
02:19:26 *** glx has quit IRC
08:37:55 * Xaroth yawns
08:37:58 <Xaroth> slept like a brick :/
08:43:17 <TrueBrain> I like a brick with a panic attack :(
08:44:29 <Xaroth> o_O
08:45:38 <TrueBrain> Xaroth: I would hold that topic till the 1st of November
08:45:46 <TrueBrain> nobody really cares at this stage that there is a new frontpage :p
08:46:19 <Xaroth> ofc
08:46:43 <TrueBrain> and is a shoutout a good thing? :)
08:46:48 <Xaroth> yeh
08:46:51 <TrueBrain> ah, k :p
08:46:58 <Xaroth> might need rephrasing
08:47:12 <TrueBrain> so I suggest to keep the text for 12 days, and add a few things to it :p
08:48:47 * Xaroth nods
08:53:02 <Xaroth> TrueBrain: technically, right, is it possible to generate the full decompiled code by itself? would be nice to have some kind of indication on how much we've converted already
08:53:35 <Xaroth> by comparing the full decompiled list with the actual decompiled list (so we know what's been removed)
08:53:58 <TrueBrain> where do you want it?
08:54:19 <Xaroth> where as in?
08:54:26 <TrueBrain> location
08:54:40 <Xaroth> I don't care, as long as I can reach it :)
08:55:01 <TrueBrain> well, that is my only problem .. in SVN would be a bit too much I guess, but where else?
08:55:09 <TrueBrain> via a http it is a bitch to download/update
08:55:13 <Xaroth> tar?
08:55:15 <TrueBrain> maybe a hg repos ..
08:55:29 <Xaroth> it only needs to be generated once per release or so
08:55:42 <TrueBrain> once every decompiler update
08:55:46 <Xaroth> or that
08:55:54 <TrueBrain> and every new JIT data
08:55:58 <TrueBrain> so it will be a bit more often :)
08:56:01 <TrueBrain> but I can do a mercurial?
08:56:05 <Xaroth> sure
08:56:18 <TrueBrain> you want the function names with it, or just plain decomiled code?
08:56:25 <Xaroth> plain decompiled
08:56:39 <Xaroth> *.c /
08:56:54 <Xaroth> hm, *.h would be useful as well
08:57:08 <TrueBrain> just the complete decompiled code, compilable and runnable and all
08:57:11 <Xaroth> yeh
08:57:31 <Xaroth> then i need to figure out how to process all that data :P
08:57:41 <Xaroth> but that's not a big issue i think
09:13:02 <DorpsGek> SVN: truebrain (r365) [JIT] -Fix: some invalid stat file slipped in
09:17:12 <DorpsGek> SVN: truebrain (r366) [JIT] -Fix: 1 more problem found by glx
09:17:27 <DorpsGek> SVN: truebrain (r367) -Update (r366): update decompiled code
09:19:55 <TrueBrain> for one reason or the other, I fail to compile a clean version
09:22:13 <Xaroth> o_O
09:23:39 <TrueBrain> for one reason or the other, it fails to produce output for a few interrupt handlers
09:23:56 <TrueBrain> k .. well .. 'fixed' it :p
09:24:20 <Xaroth> heh
09:25:58 <TrueBrain> hg clone http://devs.opendune.org/~truebrain/clean/
09:34:45 <Xaroth> ta :)
09:51:05 <Xaroth> Host is unresolved: android.client.google.com:443
09:51:14 <Xaroth> something tells me that the 1.6 update is causing some issues :P
09:58:15 <Xaroth> android.clientS.google.com, even
11:08:02 <Xaroth> grep -r "Decompiled function" clean/decompiled/*.c | wc -l
11:08:03 <Xaroth> 1031
11:08:07 <Xaroth> grep -r "Decompiled function" opendune/trunk/decompiled/*.c | wc -l
11:08:08 <Xaroth> 1007
11:08:21 <Xaroth> 24 is the magic number :P
11:09:04 <TrueBrain> okay ... lets get to work .. scenario loading ... yes yes ...
11:09:52 <Xaroth> cat clean/decompiled/*.c | wc -l
11:09:52 <Xaroth> 142151
11:10:03 <TrueBrain> Xaroth: install sloccount
11:10:15 <Xaroth> what's that?
11:10:21 <Xaroth> cat opendune/trunk/decompiled/*.c | wc -l
11:10:21 <Xaroth> 139520
11:10:27 <Xaroth> -that- is an improvement though :o
11:10:29 <TrueBrain> just install it :)
11:10:46 <Xaroth> AH
11:10:48 <Xaroth> thanks :)
11:11:00 <TrueBrain> ignores stuff like whitespaces, so the data is much more sane :)
11:11:38 <TrueBrain> hmm .. the start of scenario stuff is to check if the HouseID given is 0xFF ..
11:11:45 <TrueBrain> why would you ever start a scenario with house 0xFF?
11:11:49 <TrueBrain> weird :)
11:12:19 <Xaroth> lol @ those estimates
11:17:28 <Xaroth> total estimated cost to develop: $ 3,936,305
11:17:37 <Xaroth> where do i put in my bank account nr?
11:52:19 *** glx has joined #openDune
11:52:19 *** ChanServ sets mode: +v glx
11:52:39 <glx> hello
11:52:47 <Xaroth> o/ glx
11:53:22 <TrueBrain> morning
11:53:26 <TrueBrain> I hate assert_compile :p
11:53:36 <Xaroth> lol
11:53:44 <glx> you playing with global.h ?
11:53:47 <TrueBrain> yup
11:53:58 <TrueBrain> finally figured out the size and place of HouseInfo
11:54:05 <glx> I hate it too, but it's a good help
11:54:06 <Xaroth> nice :o
11:54:39 <glx> just when you get the error after adding 20 variables it's not nice
11:54:47 <TrueBrain> yup :(
11:54:52 <glx> because you need to recheck everything
11:55:07 <TrueBrain> oh, and I have a UTF-8 problem :(
11:55:58 <TrueBrain> - /* 18F3(3) */ PACK char string_18F3[3]; /*!< "<B3> " NULL terminated. */
11:56:00 <TrueBrain> + /* 18F3(3) */ PACK char string_18F3[3]; /*!< "<EF><BF>
11:56:01 <TrueBrain> <BD> " NULL terminated. */
11:56:03 <TrueBrain> stuff like that
11:56:48 <glx> arg
11:58:12 <glx> though 18F3 is maybe not a string
11:58:29 <TrueBrain> well, I have others :)
11:58:32 <TrueBrain> any UTF-8 ;)
11:58:35 <Xaroth> <B3> means charcode B3 right?
11:58:41 <TrueBrain> \xB3
11:58:45 <Xaroth> yeh
11:58:45 <glx> ³
11:58:54 <glx> that's B3
11:58:59 <Xaroth> hah, irssi+utf8 works :o
11:59:46 <TrueBrain> - /* 18F3(3) */ PACK char string_18F3[3]; /*!< "<B3> " NULL terminated. */
11:59:48 <TrueBrain> + /* 18F3(3) */ PACK char string_18F3[3]; /*!< "<C2><B3> " NULL terminated. */
11:59:54 <TrueBrain> when I write that symbol as UTF-8
12:00:09 <TrueBrain> glx: so is mine UTF-8, or yours?
12:00:19 <TrueBrain> - * "\r\nZuerst
12:00:21 <TrueBrain> mu<E1> das Setup-Programm betrieben werden.\r\n"
12:00:22 <TrueBrain> - * "\r\nLe pro
12:00:24 <TrueBrain> gramme de configuration doit d'abord <88>tre lanc<82>.\r\n"
12:00:25 <TrueBrain> + * "\r\nZuerst
12:00:27 <TrueBrain> mu<EF><BF><BD> das Setup-Programm betrieben werden.\r\n"
12:00:28 <TrueBrain> + * "\r\nLe programme de configuration doit d'abord <EF><BF><BD>tre lanc<EF><BF><BD>.\r\n"
12:00:30 <TrueBrain> * "\r\n" NULL terminated. */
12:00:31 <TrueBrain> sorry about stupid layout :(
12:00:57 <glx> all these are DOS charset indeed
12:01:15 <TrueBrain> so you write extended ASCII, and I wrote UTF-8?
12:02:07 <glx> <EF><BF><BD> is ^ in global.h but displayed as ê in cmd or dosbox
12:02:31 <glx> stupid charset stuff :)
12:02:52 <TrueBrain> can you type the char for german?
12:03:11 <glx> \r\nZuerst muá das Setup-Programm betrieben werden.\r\n
12:03:13 <TrueBrain> and the <82>
12:03:19 <TrueBrain> no, it is for sure not the a thing
12:03:24 <TrueBrain> it should be a ss/b
12:03:27 <glx> \r\nLe programme de configuration doit d'abord ˆtre lanc‚.\r\n
12:03:37 <TrueBrain> that too, failed
12:03:45 <TrueBrain> please type it like you did before :)
12:03:52 <TrueBrain> (I can't write UTF-8 :p)
12:04:34 <glx> well I typed them as they are shown by MSVC (and any editor)
12:04:55 <TrueBrain> [14:03] <glx> \r\nLe programme de configuration doit d'abord ˆtre lanc‚.\r\n
12:04:57 <TrueBrain> is what you just typed
12:05:39 <glx> yes that's the exact text, it is displayed as \r\nLe programme de configuration doit d'abord être lancé.\r\n in cmd and dosbox
12:05:50 <glx> different encoding :)
12:05:51 <TrueBrain> that Iw as looking for :)
12:05:54 <TrueBrain> and the german?
12:08:03 <glx> \r\nZuerst muß das Setup-Programm betrieben werden.\r\n
12:08:09 <glx> if I used the right one
12:08:18 <TrueBrain> great, tnx :)
12:08:31 <TrueBrain> then I now made it valid UTF-8
12:08:41 <TrueBrain> we will see later on what we have/need to do about such things exactly :)
12:08:51 <TrueBrain> for now my struct still doesn't add up, and I don't see where :(
12:09:38 <TrueBrain> global.h is getting big :p
12:10:09 <glx> anwyay they are just comments ;)
12:10:15 <TrueBrain> exactly :)
12:10:40 <TrueBrain> http://paste.openttd.org/217489
12:10:43 <TrueBrain> who can find me the mistake?
12:15:49 <glx> yes the first string is at 41C8 not 41CC
12:16:13 <TrueBrain> @calc 0x3c4a + 0x582
12:16:13 <DorpsGek> TrueBrain: 16844
12:16:17 <TrueBrain> @base 10 16 16844
12:16:17 <DorpsGek> TrueBrain: 41CC
12:16:53 <glx> 57E not 582
12:17:05 <TrueBrain> what is wrong with the math above?
12:17:22 <glx> the math is correct, you just use the wrong offset :)
12:17:29 <TrueBrain> where?
12:17:35 <TrueBrain> 41CC is correct, 3C4A is ..
12:17:43 <glx> it's 5E7 not 582
12:17:44 <TrueBrain> oh ... I see what is wrong ...
12:17:45 <TrueBrain> your comment :p
12:18:03 <TrueBrain> csip32 is (4), not (2) :)
12:18:33 <glx> indeed
12:18:35 <glx> sorry
12:18:39 <TrueBrain> - /* 3C46(2) */ PACK csip32 variable_3C46; /*!< ?? */
12:18:40 <TrueBrain> - /* 3C48(2) */ PACK csip32 variable_3C48; /*!< ?? */
12:18:42 <TrueBrain> + /* 3C46(4) */ PACK csip32 variable_3C46; /*!< ?? */
12:18:43 <TrueBrain> + /* 3C4A(4) */ PACK csip32 variable_3C4A; /*!< ?? */
12:18:45 <TrueBrain> or is it just 1 variable?
12:19:29 <Xaroth> int64!
12:19:39 <Xaroth> I need a drink... brb
12:20:03 <TrueBrain> 3C4A is not a csip32, so I guess 1 :)
12:20:13 <glx> 2 16bit variables indeed
12:20:31 <glx> for 46 and 48
12:21:02 <TrueBrain> emu_get_memory16(emu_ds, 0x00, 0x3C48) = emu_dx;
12:21:03 <TrueBrain> emu_get_memory16(emu_ds, 0x00, 0x3C46) = emu_ax;
12:21:07 <TrueBrain> this strongly suggests that is in fact a csip pair
12:21:45 <glx> but f__2903_090A_0019_4354 is not clear about that fact
12:21:57 <DorpsGek> SVN: truebrain (r368) -Add: figured out a few strings, and HouseInfo; also corrected the layout of some other structs to be more uniform with the rest
12:22:31 <TrueBrain> where does f__2903_090A_0019_4354 use 3C46?
12:22:45 <glx> arg 6 and 8
12:22:54 <TrueBrain> ah
12:23:17 <glx> but 6F18 is csip so 3c46 should be csip
12:23:19 <TrueBrain> check 6F18 usage
12:23:22 <TrueBrain> which clearly shows CSIP :)
12:23:30 <TrueBrain> k ... I have more strings ahead :)
12:23:42 <TrueBrain> well .. I found them in the memory, so I guess it is okay to document them (used or not :p)
12:24:26 <glx> I analyse the memory too (and dune2.exe)
12:28:11 <TrueBrain> now I have a list of PAK files ..
12:28:14 <TrueBrain> oh well, lets document them too :p
12:28:29 <TrueBrain> wow, tons of WSAs ..
12:28:38 <TrueBrain> then ADL and XMI ...
12:28:54 <TrueBrain> some other day ... :p
12:29:15 <glx> that's the list of all files :)
12:29:28 <TrueBrain> ds:42EB .. for who is bored :p
12:29:40 <TrueBrain> I really need a hex calculator
12:30:07 <glx> probably related to "File '%s' not listed in FileData[]" string :)
12:30:29 <glx> don't know the exact address
12:33:50 <TrueBrain> argh .... why isn't there a simple website to do hex calcualtions :p
12:37:54 <DorpsGek> SVN: truebrain (r369) -Add: figured out a few more variables
12:38:13 <TrueBrain> pff .. glx, much respect you already did so much strings :p
12:39:18 <TrueBrain> f__01F7_378D_0020_0F64 was sprintf, not?
12:40:32 <TrueBrain> it only replaces the %c ..
12:43:01 <glx> grr msvc just died :(
12:43:05 <TrueBrain> :(
12:44:58 <Xaroth> ms calc can do hex calc :)
12:45:06 <TrueBrain> I used google now :p
12:45:59 <TrueBrain> ah, no, it is a full sprintf, it replaces all % entries
12:46:01 <TrueBrain> pretty comples :p
12:46:03 <TrueBrain> complex
12:46:11 <TrueBrain> guess we can just skip it and replace it with sprintf :p
12:46:44 <glx> I lost all my VC settings
12:46:49 <TrueBrain> :s :s :s :s
12:46:50 <TrueBrain> what happened?
12:46:51 <Xaroth> O_O
12:47:03 <glx> hang then crash
12:49:39 <TrueBrain> emu_String_sprintf or emu_Tools_sprintf?
12:51:31 <nsz> emu_sprintf
12:51:41 <nsz> or plain sprintf
12:51:55 <glx> can't be plain :)
12:51:57 <TrueBrain> plain for sure is wrong, as it is not a real one, it is emulated
12:52:26 <TrueBrain> and I like category prefixes for emu_ functions :)
12:54:08 <nsz> emu_String_Tools_Cathegory_xxx_version12_sprintf
12:54:20 <TrueBrain> don't mock me :(
12:55:42 <TrueBrain> lol, I just put a few prints in that function
12:55:45 <TrueBrain> it sends in MOUSE.SHP
12:55:55 <TrueBrain> what for ? :) sprintf(buf, "MOUSE.SHP", <params>)
12:56:00 <TrueBrain> Dune2 can be silly
12:57:39 <TrueBrain> glx: the [%s] is used a lot :)
12:57:53 <glx> of course :)
12:57:54 <TrueBrain> IN: [%s]
12:57:55 <TrueBrain> OUT: [BASIC]
12:58:33 <glx> MOUSE.SHP should be the cursor
12:58:52 <TrueBrain> I dunno what the exact params are, as it is hard to see how many are send :)
12:59:02 <DorpsGek> SVN: truebrain (r370) -Add: named 1 function
12:59:17 <glx> yes and it seems to use stack indirectly too
12:59:36 <TrueBrain> well, in case of scenario, it uses stack to write the result to
13:00:19 <DorpsGek> SVN: truebrain (r371) -Fix (r370): two params are pointers of emu_String_sprintf
13:00:59 <TrueBrain> s/of/in/ or s/of/for/
13:01:01 <TrueBrain> take your pick :p
13:03:08 <glx> weird now MSVC can't run opendune
13:03:13 <TrueBrain> lol
13:03:15 <TrueBrain> :'(
13:03:34 <glx> but it can run openttd
13:03:42 <glx> that's silly
13:08:14 <TrueBrain> variable_38DE is the length of the scenario data .. but how to call something like that :p
13:08:21 <TrueBrain> same as variable_38DA is the pointer to the scenario data ..
13:08:45 <TrueBrain> hmmm .... not sure if it scenario only ..
13:09:02 <TrueBrain> it is either 0x2EE0, 0x4E20 or 0x6D60 ...
13:09:53 <TrueBrain> 0x2EE0 always in our case :)
13:09:59 <TrueBrain> I guess it depends on XMS/EMS yes/no ;)
13:11:55 <glx> ok I know why msvc can't start opendune :)
13:12:06 <glx> working directory is user dependant
13:12:39 <TrueBrain> @calc 0xe6
13:12:39 <DorpsGek> TrueBrain: 230
13:16:24 <TrueBrain> okay ... I guess a ini file cannot be longer than 0x2EE0 bytes
13:16:32 <TrueBrain> glx: what is the biggest ini file?
13:17:53 <glx> scenh022.ini
13:18:00 <TrueBrain> in size?
13:19:29 <glx> 9622 bytes
13:19:40 <TrueBrain> @calc 0x2ee0
13:19:40 <DorpsGek> TrueBrain: 12000
13:19:43 <TrueBrain> k :)
13:19:44 <TrueBrain> thank you!! :)
13:20:05 <TrueBrain> so 38DA is used as temporary storage for reading text-files
13:21:06 <TrueBrain> or at least I see other files also using it ..
13:22:31 <TrueBrain> and f__253D_0000_0013_38F4 seems to read a text file .. or something of the likes :) No idea why it needs so many code to do that ..
13:22:57 <TrueBrain> might of cours ehave to do with PAK files ..
13:23:18 <DorpsGek> SVN: glx (r372) -Add: opendune.vcproj.user to specify default working directory
13:23:52 <glx> now debuging is possible with a clean checkout :)
13:25:54 <TrueBrain> your strings are very useful now glx :)
13:27:13 <TrueBrain> 353F:8CFD is scenario data .. I guess making a struct for it (even if it will be an array of [1]) is more nice?
13:27:20 <TrueBrain> like DosConfig, yeah :)
13:28:30 <TrueBrain> map-seed value is 32bit
13:29:36 <TrueBrain> ah, no, timeout is ..
13:34:35 <TrueBrain> lol, the ini routines have a 'default' value, always nice to know :)
13:43:22 <glx> hehe 1F81 (",") is used a lot :)
13:45:02 <TrueBrain> f__01F7_3CD5_000D_9D98 <- split string on $ I guess
13:45:06 <TrueBrain> (not looked inside the function)
13:45:54 <TrueBrain> euh, no, that string only gets the result to match
13:46:05 <TrueBrain> f__01F7_3A8A_0018_E4EE <- tries to match the entry (HUMAN$CPU as input)
13:47:11 <TrueBrain> f__01F7_39A5_001F_1A5D <- frees the result or something? Those seem related ..
13:48:12 <glx> f__01F7_3A8A_0018_E4EE is called 2 times, with 1F5B (HUMAN$CPU) and 1FBC (0NORTH$1EAST$2SOUTH$3WEST$4AIR$5VISIBLE$6ENEMYBASE$7HOMEBASE)
13:48:33 <TrueBrain> it tries to match them ..
13:49:35 <TrueBrain> HouseInfo:12 contains credits of house :)
13:50:15 <glx> you find it because it stores starting value there ?
13:50:19 <TrueBrain> yup
13:51:18 <TrueBrain> euh ... not in HouseInfo, in House itself :)
13:51:29 <TrueBrain> it is hard to keep following the pointers correctly :p
13:53:44 <TrueBrain> f__01F7_39A5_001F_1A5D <- is more something like: FindNext
13:54:14 <TrueBrain> or maybe not ..
13:54:16 <TrueBrain> hmm ..
13:54:17 <TrueBrain> tricky :)
13:57:22 <TrueBrain> ./* 38B4(2) */ PACK uint16 playerCredits; /*!< Credits currently owned by player. */
13:57:26 <TrueBrain> I love finding such variables :)
13:57:36 <Xaroth> hax
13:58:00 <TrueBrain> it seems that the 'credit' field in House is just the 'start' credits, as for AIs a whole other set of rules is followed for 'credits' :p
13:58:11 <TrueBrain> so for now I called it creditStart :p
13:59:12 <TrueBrain> glx: we need modified scenarios to find all places :p Like when there is no HUMAN as Brain, it runs a different set of rules :p
14:00:10 <TrueBrain> f__01F7_39A5_001F_1A5D <- clears the whole temporary buffer, in a funny way :)
14:00:19 <TrueBrain> it also cleans it ..
14:01:26 <TrueBrain> oh, no, it just counts :p
14:01:29 <TrueBrain> oops .. :)
14:01:42 <TrueBrain> so strlen()
14:01:56 <TrueBrain> reading is hard :p
14:06:31 <TrueBrain> .ini assumes \r\n I guess
14:06:35 <TrueBrain> (and yes, I talk too much :p)
14:07:36 <Xaroth> no you don't :P
14:11:07 <glx> dunno, it uses 3 strings for ,: "," ",\n" ",\r\n"
14:19:40 <TrueBrain> @calc 0x36 + 0xb0
14:19:41 <DorpsGek> TrueBrain: 230
14:25:30 <TrueBrain> glx: ah, no, the +2 was to skip ID from [UNITS] :)
14:25:40 <TrueBrain> f__01F7_2252_0045_03CB <- str2int
14:31:59 <TrueBrain> f__01F7_3964_0041_7552 <- strcmp I guess
14:32:48 <TrueBrain> case insenstive
14:34:34 <glx> ,...emu_cx = 0x617A; 'a' -> 'z'
14:34:49 <TrueBrain> exactly :)
14:34:55 <TrueBrain> the sub(.., 0x20) gave it away for me :)
14:35:25 *** boekabart has joined #openDune
14:35:37 <glx> ,...emu_subw(&emu_ax, emu_bx); <-- and the result :)
14:35:43 <TrueBrain> welcome boekabart
14:35:47 <boekabart> hi
14:35:51 <TrueBrain> so yes, strcasecmp it is :)
14:36:01 <boekabart> just svn:// for this one?
14:36:04 <TrueBrain> yup
14:36:08 * boekabart will wait until he's home
14:36:15 <TrueBrain> sorry, havne't set up WebDAV :)
14:36:28 <boekabart> or is there smth like a svn proxy that I can run at home, i _do_ have vpn to home
14:36:50 <TrueBrain> so use a tunnel :)
14:37:17 <TrueBrain> I use SSH tunnels to forward such requests
14:38:36 <Xaroth> o/
14:39:18 <Xaroth> TrueBrain: If i manage to sneak in a reply to your news post i'll have claimed all the 'last post' entries on the forum >:)
14:39:55 <TrueBrain> if that gets you going, sure, go ahead :p :p :p
14:39:59 <Xaroth> hehe
14:40:21 <Xaroth> I think Nyer missed my point btw :/
14:40:28 <TrueBrain> he misses all points :p
14:40:38 * Xaroth shrugs
14:40:57 <Xaroth> communication between the dutch and the belgians have never been that efficient anyways :P
14:41:04 <TrueBrain> nope
14:41:05 <TrueBrain> never will be
14:41:09 <TrueBrain> :p
14:41:16 <TrueBrain> damn, what will I eat tonight ....
14:41:28 <TrueBrain> I ordered in last week a bit too much
14:41:30 <Xaroth> I'm having kip kerry :P
14:41:35 <TrueBrain> but I am WAY too lazy to go out ...
14:41:41 <Xaroth> then again, I'm not cooking so :P
14:42:44 <TrueBrain> f__01F7_3AF8_001D_A439 is some kind of 'split' thingy
14:43:13 <Xaroth> static links to the standard libs?
14:43:27 <Xaroth> or more home cooked stuff?
14:43:32 <TrueBrain> dunno, don't care :)
14:43:36 <Xaroth> heh
14:43:40 <TrueBrain> but what is weird about it is, that hte first time called it is given a string
14:43:43 <TrueBrain> next time a NULL
14:43:50 <Xaroth> o_o
14:43:59 <TrueBrain> so I guess it has some internal buffer
14:44:15 <TrueBrain> yup .. it does
14:44:18 <TrueBrain> 9AE2
14:47:18 <TrueBrain> found a emu_Unit_StringToID :)
14:48:36 <TrueBrain> and that then lists all unit-names ;)
14:48:48 * boekabart used 3proxy's tcppm and succesfully svn co'ed
14:48:55 <TrueBrain> 'Thopter, hehe :)
14:49:14 <TrueBrain> you can't spawn all types of units ..
14:49:31 <boekabart> HAHA externs to svnopenttd.org ?
14:49:38 <TrueBrain> yup :)
14:49:46 <TrueBrain> we share the host .. so why not use stuff from it :)
14:50:00 <TrueBrain> oh, I was looking wrong, all units are defined :)
14:50:40 <Xaroth> hah, there's a topic on fed2k going on about religion vs evolution
14:50:44 <Xaroth> hilarious as boot
14:51:18 <boekabart> apparently, the coding style allows goto's ? :D
14:51:35 <TrueBrain> boekabart: only for the decompiled part
14:51:45 <boekabart> :P
14:52:04 <Xaroth> allows is a big word :P
14:52:18 <Xaroth> we tollerate it because it makes things work properly.
14:56:17 <glx> and because jmp are goto
14:58:32 <Xaroth> @base 16 10 0x02020304
14:58:32 <DorpsGek> Xaroth: 33686276
14:58:53 <Xaroth> @calc 33686276 / 1024
14:58:53 <DorpsGek> Xaroth: 32896.7539062
14:58:57 <Xaroth> hm
14:59:32 <Xaroth> ah well, proyvind will just have to wait for us to find those 'elusive' 4 bytes in ICON.ICN :P
15:01:30 <TrueBrain> found unit health :)
15:01:35 <Xaroth> nice
15:01:51 <TrueBrain> the value in scenario ini is a % (from 1 to 256)
15:01:55 <boekabart> don't you have the feeling that you're trying to make a trainer?
15:02:01 <boekabart> "found health!!!"
15:02:04 <TrueBrain> hahaha :)
15:02:07 <Xaroth> lol
15:02:10 <boekabart> old times...
15:02:11 <Xaroth> should have heard him before
15:02:15 <Xaroth> he found money :P
15:02:23 <boekabart> did he share?
15:02:26 <TrueBrain> health or hitpoints?
15:02:29 <TrueBrain> what did we say Xaroth?
15:02:31 <Xaroth> hitpoints
15:03:06 <boekabart> Anyway, I like the idea of the project; good luck with it!
15:03:13 <Xaroth> :) thanks
15:03:27 <boekabart> (openAOE2 would be even cooler, of course, but hey...)
15:03:34 <TrueBrain> boekabart: never played it :p
15:03:34 <Xaroth> o_O
15:03:39 <TrueBrain> and you should help out :)
15:03:54 <Xaroth> how did you find us? I suspect TrueBrain but still :P
15:03:56 <boekabart> hehe, didn't I mention the 2 kids before?
15:04:09 <TrueBrain> you did .. was worth a try ;)
15:04:19 <boekabart> i'd like to but if i'm realistic...
15:04:53 <boekabart> found you by googling 'patric stout' :D
15:05:04 <Xaroth> ah, figures :P
15:05:14 <Xaroth> he's known for having his harem of stalkers :P
15:05:29 <boekabart> (in the hope of finding his home address!! )
15:05:30 <TrueBrain> google already lists OpenDUNE under my name?! Scary ...
15:05:38 <TrueBrain> boekabart: you should have used 'whois' :p
15:05:46 <Xaroth> TrueBrain: sf.net?
15:05:58 <TrueBrain> no .. 'whois' .. the *nix tool
15:06:03 <boekabart> google, bottom of page almost
15:06:15 <boekabart> i was actually hoping to find linkedin profile
15:06:30 <boekabart> i know where is house is (or used to be)
15:06:40 <Xaroth> wait, yes, i see him
15:06:41 <TrueBrain> that is my student apartment :p
15:06:43 <Xaroth> page 2 here
15:06:50 <TrueBrain> and I don't have linkedin
15:06:56 <TrueBrain> neither twitter, facebook, ....
15:07:15 <Xaroth> it links to www.opendune.org/repositories/show/toc tho :/
15:07:18 <Xaroth> stupid redmine
15:07:23 <TrueBrain> hahahaha
15:07:51 <Xaroth> ah well, i'm sure we'll have plenty of google passing by :P
15:08:42 <Xaroth> we got google, msn and yahoo crawling our forums already, though yahoo doesn't update frequently...
15:08:49 <Xaroth> so we're bound to get high up the rankings soon
15:09:14 <Xaroth> already have 2 attempts at spambots as well, but they fail :P
15:09:15 <boekabart> NO TWITTER? #openttd on twitter :)
15:09:16 <TrueBrain> I wonder what the second last value of the unit stuff does .. hmm ..
15:09:20 <TrueBrain> oh well, we will find out :)
15:09:33 <TrueBrain> I suggest Xaroth starts a twitter chnanel :p Ghehehehe :)
15:09:42 <boekabart> i'll leave you to the trainermaking, gluck!
15:09:49 *** boekabart has left #openDune
15:09:58 <TrueBrain> he just degrated our tool to 'trainermaker' :(
15:10:04 <TrueBrain> s/tool/game/
15:10:05 <TrueBrain> lol
15:10:09 <Xaroth> lol
15:10:26 <Xaroth> and sure @ twitter, but not until i get Donut on my phone
15:10:32 <Xaroth> and a working twitter client for donut..
15:10:42 <Xaroth> (must admit google names their releases funny)
15:12:10 <Xaroth> heh, one of the 'inactive' users (most likely spambots)
15:12:11 <Xaroth> descr: China Unicom Beijing province network
15:12:15 <Xaroth> from their whois
15:12:39 <TrueBrain> hmm .. there is a very limited set of AI actions :p
15:12:43 <Xaroth> they even have address information o_O
15:20:09 <DorpsGek> SVN: glx (r373) -Add: figured out a few variables
15:20:19 <glx> no strings this time :)
15:21:49 <TrueBrain> it merged flawless :)
15:24:43 <TrueBrain> netbeans has a bit of troubles parsing OpenDUNE :p
15:24:55 <TrueBrain> it was nice of boekabart to drop by :)
15:25:44 <TrueBrain> k ... passed [UNITS], 50% of Scenario loading done .. well .. only the documenting part :p
15:27:39 <DorpsGek> SVN: truebrain (r374) -Add: figured out a few variables and function names (mostly related to Scenario loading / reading)
15:34:53 <TrueBrain> I _think_ 39EA point to the map
15:35:46 <TrueBrain> scenario loading avoids putting 2 buildings over eachother
15:36:05 <TrueBrain> Xaroth: where is my em_Building_Create! :p
15:36:16 * TrueBrain hugs Xaroth :)
15:46:54 <TrueBrain> I _think_ BuildingInfo:4 has the type of building
15:47:01 <TrueBrain> type = size
15:47:11 <TrueBrain> oh, no, lol
15:47:15 <TrueBrain> nevermind .. lalala ..
15:47:20 <TrueBrain> @base 16 2 FB
15:47:20 <DorpsGek> TrueBrain: 11111011
15:48:46 <TrueBrain> STRUCTURE section is _very_ simplistic :)
15:50:54 <TrueBrain> glx: what was the url to your unpak again? :)
15:50:58 <TrueBrain> we should add it to SVN I guess :p
15:51:04 <glx> devspace
15:51:18 <TrueBrain> tnx
15:54:19 <TrueBrain> I don't understand the peice that reads [MAP]
15:54:26 <TrueBrain> it checks if it is equal to a C, which is never ..
15:54:31 <TrueBrain> well .. never happened yet ..
15:55:42 <TrueBrain> no scenario has it ..
15:55:50 <TrueBrain> @calc 0xa2f - 0x8ee
15:55:50 <DorpsGek> TrueBrain: 321
15:55:56 <TrueBrain> 321 bytecode is skipped because of it
15:57:03 <glx> some scenario have garbage at the end btw
15:58:22 <glx> like H2
15:58:33 <glx> hhgd_ZUPQXYTW\]WXZ]`didcfimnlorkhgcgkmlklnnrxyupqsolprkdghedgiloqorxyxvrmlnjhhiihklkoollqnklopqsngjkha^_c`[`c^[^a`^^`ba]]bc`cjolqz„‡Œ•œ™’‰~|unihb]XSPSX]`]^acddeddghfhmnljkiijgehjijjjqz}xy|}}wrsrpnlhbcgjiga^a\WZ[XY]__bhknmprrsurnllmnorrtxxwwy}~~||{unonkd_^XUVTUVUSUWXXX\\]cjkmonnsvstuvsstttxyvuwz{zy|}{vqrrngbceeaabbcffb__a__efbcdfiikidgjmlnqtspnnonklmqsstusssrpmkig`_ceb^]`b`agjmrwvuvusqpnjihfijloqs
15:58:41 <glx> that's the last line in it
15:58:59 <TrueBrain> the garbage started sooner
15:59:03 <TrueBrain> ID004 already is wrong
16:01:27 <TrueBrain> Special is a valid entry in [MAP]
16:01:28 <TrueBrain> never defined :p
16:04:57 <TrueBrain> k ... mapped most of the scenario stuff
16:04:59 <TrueBrain> or at least in my head :)
16:05:47 <glx> ID004 in H2 is ok
16:05:58 <TrueBrain> no, [STRUCTURES] have GEN, not ID ..
16:06:19 <TrueBrain> oh, no, you are right
16:06:21 <TrueBrain> hmm
16:06:24 <TrueBrain> how could I have missed that :s
16:06:46 <glx> GEN is stuff with no owner
16:07:03 <glx> or unreparable
16:07:13 <TrueBrain> it has a owner :)
16:07:29 <TrueBrain> but yeah, slabs and walls
16:07:33 <glx> yes I checked that after writing it :)
16:08:14 <glx> and location seems to be included in GENXXXX
16:08:36 <proyvind> Xaroth: you figured out what SINF chunk in ICON.ICN is for?
16:08:36 <TrueBrain> yes ... it is freaking annoying :p
16:09:41 <TrueBrain> sound like an info field ;)
16:09:55 <proyvind> ?
16:10:04 <TrueBrain> s/field/chunk
16:10:32 <proyvind> I think it's a mnemonic for "session info"
16:11:02 <TrueBrain> as I said: it sounds like an info chunk :)
16:11:04 <TrueBrain> what is in it?
16:11:19 <proyvind> that's just exactly what I'm curious about :p
16:11:31 <TrueBrain> you know the length I assume?
16:11:34 <proyvind> yes
16:11:35 <TrueBrain> even hex is fine by me :)
16:11:39 <proyvind> it's just 4 bytes
16:11:52 <proyvind> http://forum.dune2k.com/index.php?topic=21989.0
16:12:48 <proyvind> IFF chunks are like this:
16:12:49 <proyvind> typedef unsigned char UBYTE; /* 8 bits unsigned */
16:12:49 <proyvind> typedef short WORD; /* 16 bits signed */
16:12:49 <proyvind> typedef unsigned short UWORD; /* 16 bits unsigned */
16:12:49 <proyvind> typedef long LONG; /* 32 bits signed */
16:12:52 <proyvind> typedef char ID[4]; /* 4 chars in ' ' through '~' */
16:12:54 <proyvind> typedef struct { ID ckID; LONG ckSize; /* sizeof(ckData) */ UBYTE ckData[/* ckSize */]; } Chunk;
16:13:26 <TrueBrain> default layout for a chunk, yes :p
16:15:25 <TrueBrain> k, so 0x02020304 is the content
16:15:33 <Xaroth> yar
16:15:35 * Xaroth home
16:15:47 <TrueBrain> sounds to me like boundaries, but that really is a wild guess :)
16:15:49 <proyvind> TrueBrain: memory address?
16:15:55 <TrueBrain> left, top, right, bottom
16:16:01 <proyvind> didn't find anything interesting in DUNE2.EXE at that address at least..
16:16:07 <proyvind> not interesting at first sight at least..
16:16:15 <Xaroth> 2, 2, 3, 4?
16:16:25 <TrueBrain> the chances of that being a mem-address are very very low :)
16:16:39 <TrueBrain> Shape Info, I would say
16:17:07 <proyvind> TrueBrain: yeah, my thought as well, none the less, file offset would be 28452 if it were a memory address..
16:17:11 <Xaroth> @base 16 10 0x0202
16:17:11 <DorpsGek> Xaroth: 514
16:17:23 <Xaroth> @base 16 10 0x0304
16:17:23 <DorpsGek> Xaroth: 772
16:17:26 <proyvind> all ahapes are 16x16..
16:17:38 <TrueBrain> are there any other ICN files?
16:17:41 <proyvind> no
16:17:47 <proyvind> there's different versions
16:17:54 <proyvind> the different version in the demo
16:17:57 <proyvind> has same value though :/
16:17:58 <Xaroth> does that differ?
16:18:00 <Xaroth> hm
16:18:13 <TrueBrain> where does the ICON.ICN show?
16:18:27 <proyvind> TrueBrain: what do you mean?
16:18:40 <glx> of course it's not in global.h yet
16:18:41 <TrueBrain> where in the game?
16:18:55 <Xaroth> ICON.ICN are tiledata
16:19:32 <TrueBrain> (sorry, the thread was too long with too much blabla :p)
16:20:02 <proyvind> http://en.wikipedia.org/wiki/NRG_(file_format) <- nero is using IFF, from my understanding reading the EA IFF specification it's strongly advised against using same mnemonics for different purposes, so nero miiight just be using it for same purpose here.. but I'm not able to make much out of of it..
16:20:11 <proyvind> only other place I've found any references to SINF...
16:20:37 <proyvind> looking at the structure of NRG SINF structure, it would match in size though..
16:20:42 <TrueBrain> OpenTTD uses chunks too, like you describe above .. I doubt they ever cared about existing codes :p
16:20:49 <proyvind> Version 1 and 2
16:20:49 <proyvind> Size (bytes)
16:20:49 <proyvind> Type
16:20:49 <proyvind> Value / Purpose
16:20:50 <proyvind> 4 Chunk ID "SINF" 4 32bit Chunk size (bytes) 4 32bit # tracks in session
16:20:58 <TrueBrain> there are no tracks ;)
16:21:08 <TrueBrain> Xaroth: you mean the images for the game-view-map-thingy?
16:21:35 <Xaroth> concrete slab, 1 tile, CY, 4 tiles
16:21:44 <Xaroth> visual representations, iirc
16:22:16 <TrueBrain> proyvind: every tile has a SINF chunk?
16:22:31 <TrueBrain> (sorry, it is easier to ask then to lookup :p)
16:22:43 <proyvind> TrueBrain: no, there's just one SINF chunk
16:23:06 <TrueBrain> what are the values in other versions?
16:23:16 <Xaroth> <+proyvind> has same value though :/
16:23:19 <Xaroth> identical :)
16:23:24 <proyvind> 53 49 4E 46 00 00 00 04 02 02 03 04
16:23:32 <proyvind> this is the whole chunk
16:23:46 <proyvind> [SINF][SIZE][DATA]
16:23:57 <TrueBrain> [18:17] <proyvind> there's different versions <- so I guessed there were ICON.ICN with other values for that chunk?
16:24:02 <proyvind> nope
16:24:06 <proyvind> same value
16:24:09 <TrueBrain> ah, then I misunderstood you :)
16:24:10 <proyvind> 18:23:16 <@Xaroth> <+proyvind> has same value though :/
16:24:10 <glx> ok found where it's used
16:24:11 <proyvind> ;)
16:24:27 <glx> ICON.ICN is 223E
16:24:30 <TrueBrain> proyvind: you were talking about the demo :p
16:24:57 <TrueBrain> used exactly once ..
16:25:40 <proyvind> TrueBrain: I was talking about the demo and other versions ;)
16:25:48 <glx> and that reminds me I didn't finished to extract unknown_21CD :)
16:25:52 <proyvind> but yes
16:25:55 <proyvind> used just once
16:26:17 <TrueBrain> the chunk is loaded by f__B4B1_01CD_002A_CE8A
16:26:41 <TrueBrain> result in bp - 0x12
16:27:01 <TrueBrain> byte-value
16:27:08 <TrueBrain> euh .. sorry, let me rephrase:
16:27:12 <TrueBrain> [byte][byte][??]
16:27:29 <TrueBrain> the last is a byte too
16:27:40 <TrueBrain> 3rd value is never used
16:27:41 <TrueBrain> lol
16:27:42 <proyvind> it's loaded as 4x1byte? not 1x4?
16:27:50 <proyvind> uh
16:27:55 <TrueBrain> I can't tell how it is loaded, I can only tell how it is used :)
16:28:03 <proyvind> 4xuint8_t rather than 1xuint32_t I mean..?
16:28:17 <TrueBrain> well, it is used as [byte][byte][??][byte]
16:28:20 <TrueBrain> so the 3rd has to be a byte too :p
16:28:26 <proyvind> obviously ;)
16:28:27 <TrueBrain> (byte being a uint8 of course)
16:29:01 <TrueBrain> basicly: load chunk (0x4953464E (in which ever endian :p)), 4 bytes, to bp-0x12
16:29:22 <TrueBrain> bp-0x12 and bp-0x11 are given to f__22A6_1158_0069_1890
16:29:32 <TrueBrain> (sign-extended, but who cares)
16:31:02 <TrueBrain> then bp-0x12, bp-0x11 and bp-0x0F is used to load chunk 0x53535445
16:32:17 <TrueBrain> oh, no, not true .. it is kept in another local variable ..
16:32:59 <TrueBrain> it is handed to f__253D_023A_0038_2BAE() as 5th param
16:33:17 <TrueBrain> http://paste.openttd.org/217491
16:33:18 <TrueBrain> that value
16:33:20 <TrueBrain> :p
16:34:02 <TrueBrain> b1 * (b2 << 3) * b4
16:34:04 <TrueBrain> if I read it correctly
16:34:05 <proyvind> that doesn't make me much wiser.. ;)
16:34:22 <TrueBrain> @calc 2 * (2 << 3) * 4
16:34:22 <DorpsGek> TrueBrain: Error: Something in there wasn't a valid number.
16:34:29 <TrueBrain> @calc 2 * 16 * 4
16:34:29 <DorpsGek> TrueBrain: 128
16:34:35 <proyvind> oh
16:34:37 <proyvind> 128 makes sense
16:34:48 <TrueBrain> LOL!
16:34:50 <TrueBrain> :)
16:35:02 <proyvind> neat
16:35:09 <TrueBrain> but that '3' is never ever used
16:35:14 <proyvind> hm
16:35:39 <Xaroth> @calc 16**2
16:35:39 <DorpsGek> Xaroth: 256
16:35:58 <proyvind> I think at least that the 128 might make sense, there's "128 bytes of "compressed" tile data"
16:36:15 <proyvind> but I'm wondering if I already have that value from somewhere else
16:36:27 * proyvind is switching between reading from forum thread and his own code ;p
16:39:07 <TrueBrain> there are some hardcoded checks on the values
16:39:24 <TrueBrain> when the first 2 are not equal or if the first is 3 or higher, some default values are loaded
16:40:42 <TrueBrain> cool, the first 2 at '1' gives cool tiles :)
16:40:54 <proyvind> cool tiles?
16:40:55 <TrueBrain> they are 50% of the size, that for sure
16:41:06 <TrueBrain> and they are more simple
16:41:16 <TrueBrain> like they are meant for 160x200 screen
16:41:31 <TrueBrain> euh, 160x100 :p
16:41:45 <Xaroth> 4,4?
16:41:49 <proyvind> as in 320/200 then?
16:41:59 <TrueBrain> Dune2 normally runs in 320x200
16:42:01 <proyvind> yeah
16:42:03 <proyvind> I know :)
16:42:13 <TrueBrain> but I guess that can also be a side-result .. but okay, it makes the tiles twice as small :p
16:42:21 <TrueBrain> so 8x8 :)
16:42:47 <TrueBrain> so I guess it means x by y, as they have to be equal :)
16:43:28 <TrueBrain> changing the last value has no clear effect
16:43:46 <Xaroth> bpp?
16:43:52 <proyvind> hm, Bpp?
16:43:54 <TrueBrain> we have 256 colours
16:43:57 <TrueBrain> so that is unlikely
16:44:01 <proyvind> hm
16:44:02 <proyvind> true
16:44:11 <TrueBrain> and '4' is a weird value for 256 colours :)
16:44:22 <TrueBrain> besides, it is only used to calculated that 128 value
16:44:35 <proyvind> maybe it's an easter egg to unlock 32 bit colors ;)
16:44:37 <proyvind> hehehe
16:44:44 <TrueBrain> LOL!
16:45:23 <TrueBrain> euh ... that '5th' param to f__253D_023A_0038_2BAE() is not used :)
16:45:34 <TrueBrain> so the 3rd and 4th value of SINF are ignored by Dune2 1.07 EU version :)
16:45:53 <TrueBrain> the first two have to be eqaul, and either 0, 1, or 2
16:46:23 <TrueBrain> value '0' segfaults
16:46:24 <TrueBrain> cool
16:46:28 <Xaroth> not 4? :(
16:46:36 <Xaroth> would be useful to have double-sized window :P
16:46:36 <TrueBrain> >= 3 loads a default set
16:47:28 <TrueBrain> well, I guess I can see what those defaults are
16:48:48 <TrueBrain> of course I had some other changes pending .. lol :)
16:50:10 <TrueBrain> BLACK!
16:50:12 <TrueBrain> :)
16:52:15 <DorpsGek> SVN: truebrain (r375) [JIT] -Add: invalid values for first 2 bytes of SINF chunk in ICON.ICN
16:53:05 <DorpsGek> SVN: truebrain (r376) -Add: named 3 more functions
16:53:19 <TrueBrain> proyvind: yeah, the other 2 values really seem unused (in this version of dune :p)
16:54:02 <TrueBrain> @calc pow(2,3)
16:54:02 <DorpsGek> TrueBrain: 8
16:54:28 <TrueBrain> weird that '2' indicates 16x16 tiles :p
16:55:11 <Xaroth> @calc 2 << 3 :P
16:55:11 <DorpsGek> Xaroth: Error: invalid syntax (<string>, line 1)
16:55:13 <Xaroth> @calc 2 << 3
16:55:13 <DorpsGek> Xaroth: Error: Something in there wasn't a valid number.
16:55:22 <Xaroth> meh
16:55:25 <proyvind> changing the third value messes things up for me when trying to run it
16:55:36 <TrueBrain> let me try ..
16:55:45 <glx> TrueBrain: no you use my method ???
16:55:58 <TrueBrain> glx: sorry?
16:56:16 <glx> you tried random values to see what happens
16:56:37 <TrueBrain> of course :)
16:56:37 <proyvind> changed third value from 2 to 3 and only units were visible on the map
16:56:58 <Xaroth> 3rd value?
16:57:03 <Xaroth> wasn't it 0x02020304?
16:57:21 <proyvind> I mean
16:57:28 <TrueBrain> Xaroth: 4 values, yes
16:57:31 <TrueBrain> try to keep up ;)
16:57:35 <proyvind> hm
16:57:38 <Xaroth> TrueBrain: you keep up too :P
16:57:41 <TrueBrain> proyvind: 3rd value is '3' :p
16:57:42 <proyvind> no, I messed up something else now
16:57:48 <Xaroth> if the third value is 0x03, how can he change it from 0x02 to 0x03 :P
16:58:05 <DorpsGek> SVN: glx (r377) -Add: figured out a few variables
16:58:06 <TrueBrain> Xaroth: yeah, I noticed a bit later :$
16:58:10 <Xaroth> :P
16:58:34 <TrueBrain> go glx, go :)
16:59:41 <TrueBrain> proyvind: I can guess that '3' is the bpp
16:59:44 <TrueBrain> @calc pow(1,3)
16:59:44 <DorpsGek> TrueBrain: 1
16:59:47 <TrueBrain> @calc pow(2,3)
16:59:47 <DorpsGek> TrueBrain: 8
16:59:49 <TrueBrain> oh, lol
16:59:51 <TrueBrain> hmm :)
16:59:57 <proyvind> changing third value didn't seem to do much for me after all I guess..
17:00:09 <TrueBrain> @base 2 10 100
17:00:09 <DorpsGek> TrueBrain: 4
17:00:23 <proyvind> maybe some enum?
17:00:23 <TrueBrain> I am getting insane here ...
17:00:25 <proyvind> hm
17:00:26 <proyvind> nah
17:00:26 <Xaroth> haha Fallen earth got sandworms
17:00:34 <TrueBrain> well, no 1 << 3 is 8
17:00:39 <proyvind> ah
17:00:49 <TrueBrain> but as the game is always 8bpp .. that would be silly :p
17:01:19 <TrueBrain> how does the compression work?
17:02:11 <TrueBrain> (btw, Xaroth, this is our ticket into allowing 32bpp :p)
17:02:30 <proyvind> not really certain, I didn't wrote the original code of mine, so there's parts of it I'm not really sure about specifics of..
17:02:49 <TrueBrain> is it RLE, or is it always that a 16x16 needs 128 bytes or what ever?
17:02:58 <proyvind> I think it's always 16x16
17:02:58 <Xaroth> TrueBrain: the blitter has support for 32bpp already?
17:03:12 <TrueBrain> of course not Xaroth :p
17:03:16 <TrueBrain> proyvind: that is no compression :)
17:03:17 <Xaroth> darn
17:03:23 <Xaroth> would have saved some trouble there :P
17:03:57 <proyvind> TrueBrain: yeah, I see now, nada, no format80/format40/format2 or anything :)
17:03:59 <Xaroth> then again, we have a few experts on the topic of getting things 32bpp ready :p
17:04:40 <TrueBrain> proyvind: so all I can say is that the first 2 bytes have to be equal, either 1 or 2 or 4, and indicate some kind of 'size' in x/y of the tiles
17:04:49 <TrueBrain> (although '4' never results in any visible output :p)
17:05:03 <TrueBrain> but that might be logic, as there is no 32x32 tiles in the ICN :p
17:05:31 <TrueBrain> and I am happy, finally getting the hang on how to read this code :)
17:05:49 <TrueBrain> bbl, dinner
17:08:51 <proyvind> so... size: (2<<3)*(2<<3), bpp: (1<<3), ??: (4<<3)?
17:10:10 <TrueBrain> the bpp we will never know, and will remain a guess (it is never used ;))
17:11:11 <proyvind> yeah, but making a guess and telling ourself that we guessed correctly makes us all feel better ;)
17:11:48 <proyvind> it'll do good for our egos!
17:12:10 <TrueBrain> k .. let me trace the first 2 parameters a bit more after dinner
17:12:46 <proyvind> :)
17:32:52 <proyvind> hm
17:33:40 <proyvind> perhaps 4<<3=64 == map size?
17:33:54 <TrueBrain> it is just '4'
17:33:56 <Xaroth> that'd be something for ICON.MAP
17:34:01 <TrueBrain> it is used in 2 * (2 << 3) * 4
17:34:47 <TrueBrain> emu_rcrw(&emu_cx, 0x1);
17:34:49 <TrueBrain> emu_shlw(&emu_cx, 0x1);
17:34:50 <TrueBrain> emu_rclw(&emu_cx, 0x1);
17:34:52 <TrueBrain> emu_shlw(&emu_cx, 0x1);
17:34:53 <TrueBrain> eeuuuhhhh ......
17:35:48 <Xaroth> rcr? rcl?
17:35:55 <TrueBrain> roll over .. euh ..
17:36:11 <glx> rotate
17:36:18 <glx> with carry
17:36:29 <glx> IIRC
17:36:36 <TrueBrain> what it does: shift right, shift left (so & 0xFFFE), shift left but if value was &0x1 do |= 1, shift left
17:36:55 <TrueBrain> oh, not true, shl also sets the carry
17:37:01 <SmatZ> still strange
17:37:09 <SmatZ> why does it do rcrw?
17:37:18 <TrueBrain> the carray is always 0 at that point
17:37:23 <SmatZ> it's result is discarded by shlw
17:37:27 <SmatZ> its
17:37:39 <TrueBrain> but .. shl now does have the second bit in his cf
17:37:47 <TrueBrain> euh ... highest bit :p
17:37:53 <SmatZ> haha
17:37:57 <TrueBrain> which is always 0 ...
17:38:14 <TrueBrain> (as it was just made 0 by rcr ..)
17:38:19 <TrueBrain> okay, I am totally lost here :p
17:38:59 <SmatZ> hmm so... first two instructions: CF is unchanged, CX &= 0xFFFE
17:39:09 <TrueBrain> yup
17:39:26 <TrueBrain> but the instruction before the rcr is a 'and'
17:39:30 <TrueBrain> which always sets the cf to 0 ..
17:40:01 <TrueBrain> so in the bigger picture, it makes no sense ...
17:40:08 <TrueBrain> so it just does: cx << 2 :p
17:40:16 <SmatZ> can it be target of jump/call?
17:40:29 <TrueBrain> nope, it is stored in a static variable
17:40:38 <TrueBrain> funny enough, the lines below:
17:40:47 <TrueBrain> emu_cx = emu_ax;
17:40:48 <TrueBrain> emu_shlw(&emu_cx, 0x1);
17:40:50 <TrueBrain> emu_shlw(&emu_cx, 0x1);
17:41:07 <SmatZ> hm
17:41:18 <SmatZ> are you sure it's code and not data?
17:41:26 <TrueBrain> I am 100% sure it is code
17:41:39 <TrueBrain> confirmed it via both my emulator as DOSBox, as the things it does when igornign the sillyness
17:41:51 <SmatZ> is it decoded correctly?
17:42:08 <TrueBrain> proyvind: fun 'facts' about those values: they should be equal. Locally it stores: (b1 << 2), (b1 << 3) and my personal favorite: -(b1 << 3) + 0x140
17:42:16 <TrueBrain> SmatZ: yes, well .. DOSBox agrees on the decoding
17:42:22 <TrueBrain> the result is also what you would expect
17:42:47 <TrueBrain> SmatZ: it was most likely some C construct which is compiled like this ..
17:42:51 <SmatZ> :-)
17:43:04 <SmatZ> silly compiler
17:43:13 <SmatZ> from late 80's :-p
17:43:15 <TrueBrain> oh, and there is a static variable which holds b1 & 2 :p
17:43:22 <SmatZ> hehe
17:45:49 <TrueBrain> if b1 != b2 or b1 >= 3, then those values are, 4, 2, 4, 8, 0x138, where with b1 = b2 = 2 they are 2, 8, 4, 8, 0x138 and with b1 = b2 = 1 they are 0, 4, 2, 4, 0x13A
17:48:06 <TrueBrain> the 0x138 / 0x13A is used to jump forward every time .. in an array or something :)
17:49:13 <SmatZ> :-)
17:49:23 <TrueBrain> euh, I was wrong, b1 = b2 = 2 gives 2, 8, 8, 16, 0x130
17:49:51 <TrueBrain> b1 = b2 = 1 gives 0, 4, 4, 8, 0x138
17:55:30 <DorpsGek> SVN: glx (r378) -Add: figured out a few variables
17:55:53 <glx> I have a big block of strings to handle (0x31D bytes)
17:57:32 <proyvind> so..
17:57:37 <proyvind> did you reach a final conclusion? ;po
18:02:08 <TrueBrain> ghehe :) Was out for a sec, so no :p
18:03:26 *** TrueBrain has quit IRC
18:04:39 *** TrueBrain has joined #openDune
18:05:01 <TrueBrain> nice ... gone was Konversation :p
18:05:56 <TrueBrain> okay ... 'size per sprite' is (b1 << 2) << 4
18:06:35 <TrueBrain> so 128 bytes per sprite ...
18:07:17 <TrueBrain> @calc 16*16
18:07:17 <DorpsGek> TrueBrain: 256
18:07:19 <TrueBrain> lol .. dah :p
18:11:18 <TrueBrain> emu_addb(&emu_al, 0xFF);
18:11:19 <TrueBrain> emu_rclb(&emu_ch, 0x1);
18:11:21 <TrueBrain> emu_incb(&emu_al);
18:11:22 <TrueBrain> asty ..
18:14:05 <TrueBrain> proyvind: there is some kind of compression in ICN ..
18:17:44 <proyvind> ah
18:17:44 <proyvind> yes
18:18:02 <proyvind> it's described here: http://forum.dune2k.com/index.php?topic=20441.msg339067#msg339067
18:18:56 <proyvind> hm, gives some more info as well
18:19:10 <TrueBrain> yeah, 4 bits
18:19:34 <proyvind> yah
18:19:40 <proyvind> that explanis a bit :o)
18:22:11 <TrueBrain> fun 'fact': 22A6, which handles the loading of this file, is always called via a pointer, meaning it can runtime be changed to something else, meaning it is meant to detect the type it is loading, and adjust accordingly
18:26:59 <TrueBrain> http://paste.openttd.org/217498
18:27:02 <TrueBrain> dunno if it is really useful
18:27:19 <TrueBrain> there are 3 scenarios, b1 = b2 = 2 is what is used, the others are possible
18:27:33 <TrueBrain> b1 = b2 = 1 is clearly meant for lower-res
18:27:44 <TrueBrain> the other is something of which code is not compiled into Dune2 :)
18:28:13 <TrueBrain> size-per-sprite mostly is VERY small .. and 33F causes the sprite to never really load :p
18:28:27 <TrueBrain> I guess it can be seen as a 'failure' or 'error' :p
18:28:52 <TrueBrain> so yes, those 2 values configure everything about a sprite :)
18:29:03 <TrueBrain> it assumes 4bits = 1 pixel
18:29:09 <TrueBrain> then it all makes sense :)
18:29:40 <TrueBrain> as then it simply means: (b1 << 3) by (b2 << 3)
18:30:14 <TrueBrain> a long search for an answer we guessed a good hour ago :)
18:30:32 <TrueBrain> hmm .. I guess I can aswell C-ify this now ..
18:34:12 <TrueBrain> not enough concrete to do so .. oh well :)
18:41:51 <Xaroth> :o
18:53:37 <TrueBrain> proyvind: btw, this also means the '4' makes sense: bits per pixels
18:53:54 <TrueBrain> and '3' either the bpp, or the shift value
18:54:36 <Xaroth> \o/
18:54:42 <proyvind> yeah
18:54:45 <proyvind> figures :)
18:57:17 <TrueBrain> proyvind: do you have any idea what entry can be in [MAP] that starts with a C ?
18:57:26 <TrueBrain> the syntax seems to be C<number> = <fields>
18:58:49 <TrueBrain> oh, the text starting with a C is 6 chars long I estimate
18:58:49 <proyvind> [MAP]?
18:58:52 <proyvind> th e.ini file?
18:58:56 <TrueBrain> yes
18:58:57 <proyvind> hm
18:59:02 <TrueBrain> sorry, forgot to say that :)
18:59:14 <proyvind> try checking IniFile class in libeastwood and Map* classes in doon lunacy
18:59:19 <proyvind> I don't really have too deep knowledge of them
18:59:26 <TrueBrain> urls?
18:59:37 <proyvind> they're kinda leftovers yet to be cleaned up and rewritten :)
18:59:43 <proyvind> launchpad.net/doonlunacy
18:59:46 <proyvind> launchpad.net/libeastwood
18:59:52 <TrueBrain> glx: is 1BC4 a typo? EFINAL?
18:59:57 * Xaroth shivvers
19:00:20 <TrueBrain> no, it is not
19:00:22 <TrueBrain> weird ..
19:00:57 <glx> 1BC4 is EFINALA
19:01:09 <TrueBrain> weird .. 2 A finals, 3 H, 4 Os ..
19:01:12 <TrueBrain> and 2 Es?
19:01:49 <proyvind> no
19:01:53 <proyvind> they're concatenated
19:01:56 <proyvind> or whatever term to use
19:01:57 <TrueBrain> damn, launchpad is slow :(
19:02:19 <proyvind> next scene starts with first frame xor'ed over last frame of previous
19:02:24 <glx> 1EAA is EFINALA too
19:02:24 <proyvind> cutscene
19:02:38 <TrueBrain> proyvind: we were talking about the filenames
19:02:47 <proyvind> just like INTRO7[AB].WSA & INTRO8[ABC].WSA
19:02:49 <proyvind> so am I :)
19:02:56 <glx> oh and 235D too
19:02:57 <TrueBrain> and I meant the Es :)
19:02:59 <TrueBrain> what is E? :)
19:03:21 <Xaroth> can be emperor, or everybody?
19:03:33 <glx> they are wsa in finale.pak
19:03:36 <TrueBrain> that indeed is possible .. hmm .. niceone Xaroth
19:03:37 <proyvind> hm
19:03:39 <glx> so maybe emperor yes
19:03:41 <proyvind> lemme see
19:03:45 <Xaroth> Emperor most likely
19:03:50 <Xaroth> Emperor scenes where he talks
19:03:50 <proyvind> I doubt a bit
19:03:54 <proyvind> ah
19:03:59 <Xaroth> and then your side talking or whatever
19:08:59 <TrueBrain> proyvind: your code also doesn't load the C thingy, what ever it might be :)
19:09:30 <proyvind> hm
19:09:30 <proyvind> k
19:09:40 <TrueBrain> uncovering new features already :)
19:10:10 <proyvind> oh
19:10:16 <proyvind> [MAP] is map seed generator
19:10:22 <proyvind> see MapSeed class
19:10:22 <proyvind> etc.
19:10:25 <proyvind> in doon lunacy
19:10:30 <TrueBrain> I know
19:10:34 <TrueBrain> but there is a field which starts with a C
19:10:39 <TrueBrain> Dune2 has code for it
19:10:59 <proyvind> hm
19:11:05 <proyvind> in which scen*.ini file?
19:11:13 <TrueBrain> none
19:11:23 <TrueBrain> as I said, the code has it, and I have no idea what this C field is/does :)
19:11:28 <proyvind> ah
19:11:31 <proyvind> I see
19:11:50 <proyvind> check fed2k forum posts, maybe segra has knowledge of
19:12:09 <TrueBrain> fed2k is not the most easiest to search for anything .. even more as all I know: it starts with a C :p
19:13:16 <proyvind> I know..
19:13:42 <proyvind> but try search for something with either "scenario" or "map" as keyword perhaps :o)
19:16:38 <TrueBrain> or I just read what the syntax is and try it :)
19:16:40 <TrueBrain> ghehe
19:18:39 <proyvind> I've seen some other "hidden" features such as lemonfactor etc. being spoken of as well in the forums :)
19:18:49 <proyvind> try the dune2.exe programming thread
19:18:56 <glx> is there any reference on profile.ini somewhere ?
19:19:07 <proyvind> I don't think there actually is a profile.ini
19:19:12 <proyvind> search through the forums
19:19:17 <proyvind> I saw it being discussed the other day
19:19:19 <proyvind> :)
19:19:23 <proyvind> you should find it easily
19:20:52 <glx> TrueBrain: when you post an url in the forum, use the [url] tag :)
19:21:46 <TrueBrain> sorry :$
19:22:34 <Xaroth> url?
19:22:35 <Xaroth> o_O
19:25:32 <glx> http://forum.opendune.org/viewtopic.php?p=8#p8 <-- there, but I fixed it :)
19:28:51 <Xaroth> it should auto-detect urls tho
19:30:38 <TrueBrain> k, no hits on any map related thing with a C
19:30:48 <TrueBrain> and I cna't make anything out of it, although I am almost sure about the params :p
19:31:53 <Xaroth> conditions? :P
19:31:57 * Xaroth randomguess
19:32:23 <proyvind> hm
19:32:39 <TrueBrain> I can only see it useful to unreveal a piece of the map or what ever
19:32:42 <proyvind> maybe you'll have luck finding some hints in the docs that comes with the 1.07hs cd version?
19:32:52 <TrueBrain> were there docs there?
19:32:54 <proyvind> just like many of the other WW games
19:32:56 <TrueBrain> what kind of docs?
19:33:07 <proyvind> features described in the docs
19:33:12 <TrueBrain> url?
19:33:17 <proyvind> aren't actually (enabled) in the game
19:33:33 <proyvind> ie. like the bloom that acts in same fashion as crates in c&c
19:33:55 <proyvind> there's two types of blooms :)
19:34:02 <proyvind> http://nyerguds.arsaneus-design.com/dune/
19:34:17 <proyvind> dune2-cd*
19:34:25 <proyvind> alsp
19:34:26 <proyvind> also
19:34:35 <TrueBrain> a crashed plane
19:34:36 <TrueBrain> hmm
19:34:39 <proyvind> have you looked at segra's db?
19:34:42 <TrueBrain> nope
19:34:44 <TrueBrain> and I try not to :)
19:34:53 <proyvind> why?
19:35:02 <TrueBrain> say there is a serious misunderstanding of a piece of code
19:35:07 <TrueBrain> we would take that over, instead of investigating ourself
19:35:15 <TrueBrain> this way of 'isolated' investigation avoids that
19:35:22 <TrueBrain> in the end, we can compare both, and see who is right :)
19:35:27 <proyvind> ;)
19:36:38 <TrueBrain> we are a 'fresh' pair of eyes :)
19:38:45 <TrueBrain> C???XXYY = <background-tile>,<foreground-tile>
19:38:47 <TrueBrain> nice feature :)
19:41:07 <TrueBrain> XXYY seem to start at 16x16
19:41:15 <TrueBrain> in first map
19:46:01 <TrueBrain> hmm .. no clue in fact what the first <background-tile> really is :p
19:46:04 <TrueBrain> it doesn't seem to differ ...
19:50:25 <TrueBrain> planetmaker: I can't find any docs? Only the dune2 files ..
19:50:28 <TrueBrain> oh, DUNE2.DOC
19:50:30 <TrueBrain> hehe
19:50:33 <TrueBrain> planetmaker: ? Sorry, meant proyvind :)
19:50:56 <TrueBrain> Word 6 ..
19:51:34 <proyvind> yeah, dune2.doc :)
19:52:19 <planetmaker> hehe :-)
19:54:12 <Xaroth> TrueBrain: Palette?
19:54:34 <TrueBrain> no value makes any change
19:54:36 <TrueBrain> so I don't know :)
19:54:40 <TrueBrain> k, made a post about the information :)
19:56:06 <DorpsGek> SVN: truebrain (r379) [JIT] -Add: some situations in scenario loading that never happened with scenarios supplied by original Dune2
19:56:22 <DorpsGek> SVN: truebrain (r380) -Update (r379): update decompiled code
19:57:50 <DorpsGek> SVN: truebrain (r381) -Add: finally name the Scenario_Load function
19:58:19 <TrueBrain> that is a nice progress I say :)
19:58:30 <TrueBrain> the function is almost 'readable' :p
19:58:32 <TrueBrain> hahahaha :)
20:00:41 <TrueBrain> glx: btw, http://forum.dune2k.com/index.php?topic=20456.msg347547#msg347547, if you hadn't find it yourself
20:03:24 <glx> yes I found this myself :)
20:03:26 <TrueBrain> when using that file it gets new functions .. but it doesn't really work, when you change a value :p
20:03:39 <TrueBrain> B4B8 btw handles it
20:04:30 <glx> B4B8 is ini parser
20:04:59 <TrueBrain> that is B4FC
20:05:09 <TrueBrain> at least, that has Ini_GetInteger and stuff
20:05:46 <glx> anyway profile.ini is not the most important thing for now :)
20:05:52 <TrueBrain> nope
20:06:00 * glx returns to strings
20:06:35 <DorpsGek> SVN: truebrain (r382) [JIT] -Add: missing functions when suplying a 'valid' profile.ini (with tnx to MrFlibble for suplying one)
20:06:49 <DorpsGek> SVN: truebrain (r383) -Update (r382): update decompiled code
20:12:40 <TrueBrain> playerCreditsNoSilo <- clear variable name?
20:13:42 <DorpsGek> SVN: truebrain (r384) -Fix: misunderstood credit-related variables
20:33:35 <TrueBrain> H8 is tricky :)
20:40:19 <TrueBrain> bah .. building limit ..
20:41:03 <TrueBrain> the positive thing about it, for every building I destroy at his place, and rebuild at mine, he can't replace
20:45:31 <glx> hehe
20:46:08 <TrueBrain> 6 carry alls, 6 rockets launchers, 6 siege tanks, 6 tanks
20:50:05 <TrueBrain> ordered 8 quad/trikes, to do the exploring for me :)
20:50:27 <TrueBrain> spend 20k already ... I did tell you guys I found where money is stored, right? :)
20:50:54 <SmatZ> hehehe
20:51:14 <TrueBrain> I really don't have the time to play normal :p
20:51:18 <TrueBrain> this already takes enough time :)
20:53:29 <TrueBrain> 8 quad/trikes did map the whole A base
20:53:37 <TrueBrain> now the O base with just 2 Quad.trikes ...
20:54:42 <glx> cheater :)
20:55:04 <TrueBrain> yup; then again, I am not here to play the game :)
20:58:41 <TrueBrain> wow, moving 20 vehicles is SLOW
21:05:43 <TrueBrain> 5 minutes later Ordos is no more
21:05:44 <TrueBrain> hehe
21:05:46 <TrueBrain> that was easy :)
21:05:49 <Xaroth> heh
21:06:32 <TrueBrain> haha, a carry-all is crazy
21:06:40 <TrueBrain> keeps on rotating around a single tile, enver dropping his cargo
21:22:03 <TrueBrain> [EMU] [ OUTW:01 ] Not Yet Implemented
21:22:05 <TrueBrain> bah
21:23:26 <glx> .,.../* 3003(9) */ PACK char string_3003[9]; /*!< "'Thopter" NULL terminated. */
21:23:26 <glx> .,.../* 300C(9) */ PACK char string_300C[9]; /*!< "orni.wsa" NULL terminated. */
21:23:32 <glx> funny strings :)
21:23:35 <TrueBrain> yup :)
21:23:37 <glx> 'Thopter
21:23:45 <TrueBrain> it is called like that all over the plac eI noticed yes
21:25:56 <Xaroth> < TrueBrain> spend 20k already ... I did tell you guys I found where money is stored, right? :) << < TrueBrain> he just degrated our tool to 'trainermaker' :(
21:26:08 * Xaroth chuckles
21:26:21 <TrueBrain> well, he gave me that idea :)
21:26:35 <TrueBrain> as final attack, the last building, all units GO GO GO
21:26:36 <Xaroth> I thought so
21:26:39 <TrueBrain> ignore all remaining defnces!
21:27:40 <Xaroth> well, edit construction time of devastators, infinite money
21:27:46 <Xaroth> sounds like a good team for a quick victory? :P
21:28:33 <TrueBrain> haha, before the first wave was destroyed, the second came knocking
21:29:08 <TrueBrain> took just 59 minutes
21:29:09 <TrueBrain> ghehe
21:29:34 <TrueBrain> CUT SCENE! :)
21:30:33 <TrueBrain> k, Atreidus ..
21:30:59 <Xaroth> s/u/e
21:31:05 <TrueBrain> oh, what ever
21:31:07 <TrueBrain> the blue ones
21:31:07 <Xaroth> :P
21:31:18 <TrueBrain> 32k credits ... lets see :)
21:32:01 <TrueBrain> again the same map :(
21:32:06 <Xaroth> windtrap refinery (no concrete required), starport, move harvester to idle mode, order out the ENTIRE starport, minus harvester/carryall
21:32:10 <Xaroth> see how fast that goes :P
21:32:18 <TrueBrain> why harvester to idle mode?
21:32:55 <Xaroth> er, 32k credits?
21:34:36 <TrueBrain> yup
21:34:39 <TrueBrain> more is not possible :)
21:34:41 <Xaroth> bit of luck you can probably win the map in 15-30 minutes
21:36:00 <TrueBrain> well, you need a defence
21:36:04 <TrueBrain> and one hell of a good one
21:36:06 <TrueBrain> defense
21:36:22 <Xaroth> build a separate base, get a MCV :)
21:36:26 <Xaroth> they ALWAYS go for the primary base
21:36:28 <TrueBrain> no concrete
21:36:36 <TrueBrain> well, all connected conrete
21:36:53 <TrueBrain> but it is the same map, so I have a goo didea :)
21:37:04 <TrueBrain> do I want special vehicles .. euh .. yes .. so I have to wait with SP orders :)
21:37:04 <Xaroth> :)
21:37:18 <Xaroth> sonic tanks?
21:37:25 <Xaroth> siege are just as good :)
21:37:33 <Xaroth> if it's devastators it's a different thing :P
21:37:53 <TrueBrain> well, I like sonics :)
21:38:03 <Xaroth> they are useful to attack multiple things at the same time :P
21:38:14 <TrueBrain> exactly
21:38:21 <Xaroth> sucky as defence tho :P
21:38:33 <TrueBrain> pff ..32k, but I refuse to pay 999 for carry-all
21:39:55 <TrueBrain> oh ... which castle do I have against me ... hmm ..
21:40:13 <Xaroth> Missiles and Saboteurs
21:40:22 <Xaroth> two missiles and a saboteur
21:40:29 <TrueBrain> one of the two in A8
21:40:43 <Xaroth> ah
21:40:47 <Xaroth> PRAY it's ordos :P
21:40:52 <Xaroth> missiles suck, mkay
21:41:49 <TrueBrain> k, 6 trikes .. that should explorer :)
21:42:03 <TrueBrain> SHIT!
21:42:07 <TrueBrain> House select :(
21:42:18 <TrueBrain> I hate it when it does that :(
21:42:29 <TrueBrain> and of course I forgot to save :(
21:42:30 <TrueBrain> retry ...
21:46:34 <glx> F8 bytes to go
21:46:44 <TrueBrain> not bad!
21:47:08 <glx> the loguest part is math :)
21:47:51 <Xaroth> F8?
21:47:55 <Xaroth> @base 16 10 F8
21:47:55 <DorpsGek> Xaroth: 248
21:47:58 <Xaroth> :o
21:49:00 <glx> Xaroth: not big as they are strings
21:49:36 <Xaroth> true
21:51:38 <glx> arg wrong size for a string, all the rest have an offset
21:52:10 <glx> stupid obiwan
21:54:51 <TrueBrain> harkonnen have the palace .. shit
21:54:52 <glx> luckily I do it block after block so only 10 addresses to fix
21:56:36 <Xaroth> TrueBrain: ofcourse they do :P
21:56:38 <Xaroth> yer in A8 ...
21:56:56 <TrueBrain> Xaroth: one of the two only has the palace
21:57:07 <Xaroth> eh? i doubt it
21:57:14 <TrueBrain> yeah, you are playing the level I guess :p
21:57:16 <TrueBrain> lol
21:57:30 <Xaroth> 8th mission is against both or just one?
21:57:37 <TrueBrain> 2, without emporer
21:57:50 <Xaroth> last time I played A8 they both had a palace
21:57:58 <TrueBrain> H8 just had 1 palace against
21:58:03 <Xaroth> odd
21:58:05 <TrueBrain> as I still don't know what ordos have
21:58:08 <Xaroth> ah well, more fun for you in A9 :)
21:58:13 <Xaroth> Ordos have Saboteur
21:58:16 <Xaroth> you can't see them, only on the map
21:58:27 <TrueBrain> currently I have a big defense problem
21:58:30 <Xaroth> they blow up buildings if they hit em
21:58:36 <Xaroth> so use walls
21:58:47 <Xaroth> they always come from the same path anyhow
21:59:20 <TrueBrain> 5 hangs in a short time again
21:59:23 <TrueBrain> this isn't going well :p
21:59:38 <Xaroth> hangs as in, having to gather info, or as in, crash-hang
21:59:48 <TrueBrain> when I say hang I mean hang :)
22:07:01 <TrueBrain> stupid sonic tanks destroys my base :p
22:08:04 <Xaroth> lol
22:08:12 <Xaroth> keep em far away from your base :P
22:08:23 <Xaroth> and far away from eachother unless you are coordinating them :P
22:09:22 <TrueBrain> exact same base layout
22:09:23 <TrueBrain> sucks
22:09:25 <TrueBrain> boring ..
22:09:57 <Xaroth> what's start.bin used for btw?
22:10:04 <TrueBrain> it is the memory
22:10:19 <TrueBrain> well .. it is dune2.exe :)
22:10:36 <Xaroth> aka, it's a required file :P
22:10:40 <TrueBrain> yup
22:10:42 <TrueBrain> very much
22:11:12 <Xaroth> tempted to make a teaser for the gaming community ('clan') i hang around
22:11:47 <Xaroth> possibly leech us a fair few testers once it comes out as well :)
22:14:19 <Xaroth> teaser2 was 2.84mb, we've now gone back to 2.32mb (but slowly rising)
22:14:55 <Xaroth> mind, the zip is bigger :o
22:15:45 <TrueBrain> ha, one freeman made it to the base, and is killing it from behind :)
22:15:51 <Xaroth> nice
22:15:59 <TrueBrain> but, no palace for Ordos
22:16:05 <Xaroth> odd
22:16:07 <Xaroth> ah well, lucky you :P
22:16:16 <Xaroth> else you'd be randomly missing structures :P
22:16:21 <TrueBrain> I believe that was always .. 1 palace against you in 8, 2 in 9
22:16:50 <TrueBrain> .... you are stubber, aren't you?
22:16:54 <TrueBrain> open scenario.pak
22:16:57 <TrueBrain> check the inis
22:17:07 <TrueBrain> a020 -> 1 palace
22:17:11 <Xaroth> I'm not stubborn, if you say there's one palace, there's just one :)
22:17:17 <TrueBrain> h20 -> 1 palace
22:17:26 <TrueBrain> o20 -> suprise suprise, 1 palace
22:18:13 <TrueBrain> k, first attack wave .....
22:20:08 <DorpsGek> SVN: glx (r385) -Add: figured out a few variables
22:21:12 <TrueBrain> 2 repair bays is useful
22:22:19 <TrueBrain> 2 sonics are not faster than repairing
22:22:34 <glx> get a third :)
22:22:41 <TrueBrain> unit limit reached
22:22:55 <glx> kill one
22:23:02 <TrueBrain> FAR reached :p
22:23:07 <TrueBrain> I have lik e twice the amount of units :)
22:23:51 <TrueBrain> whoho, in the middle of my base ...
22:29:52 <glx> ok I'll retry to pass A2 (last time it crashed)
22:29:57 <TrueBrain> 4 rockets launchers can't win from a rocket turrent
22:29:59 <TrueBrain> GRRRR
22:34:06 <TrueBrain> that took way longer ... Ordos down
22:34:16 <glx> save :)
22:34:28 <TrueBrain> :)
22:35:54 <Xaroth> right, post on the clan forum made
22:35:58 <Xaroth> see what this yields
22:40:29 <TrueBrain> NOOOOOOOoooooooooooo .. keyboards hangs aain :(
22:44:24 <TrueBrain> so pissed, I killed every bloody building and unit I could find :p
22:44:31 <Xaroth> heh
22:44:47 <planetmaker> nice to see some progress :-)
22:45:02 <planetmaker> how difficult is it to introduce a auto-savegame?
22:45:57 <Xaroth> now or when conversion is done?
22:47:26 <glx> nice with the storage limit I have as much time as I want to eradicate ordos :)
22:48:04 <planetmaker> now ;-)
22:48:24 <TrueBrain> no idea where the save routine is atm :)
22:48:34 <Xaroth> I think TrueBrain just summed it up :P
22:48:36 <TrueBrain> and saving sometimes also crashes the whole :p
22:51:03 <TrueBrain> 51 minute
22:51:05 <TrueBrain> ghehe :)
22:51:12 <TrueBrain> 6097 credits
22:51:13 <TrueBrain> hahahahaha
22:51:18 <TrueBrain> and the 'enemy' too ... sure sure
22:55:00 <planetmaker> grr... hang in O3
22:55:12 <planetmaker> or rather the build menu
22:55:23 <TrueBrain> k, one left ..
22:56:32 <TrueBrain> other map
22:56:33 <TrueBrain> wow
22:57:14 <Xaroth> I'm off to bed
22:57:14 <Xaroth> nn
22:57:19 <TrueBrain> night Xaroth
22:57:23 <planetmaker> good idea :-)
22:57:25 <planetmaker> good night all
22:57:32 <TrueBrain> I want to finish O8 first :p
22:57:34 <TrueBrain> night planetmaker :)
22:57:56 <planetmaker> hehe... quite adicting. cost me already one night, too ;-)
22:58:07 <planetmaker> but not the next one, so see you around :-)
22:58:09 <Xaroth> and many more to come! :P
22:58:20 <TrueBrain> it is more that I want you to continue to play around :)
22:58:33 <planetmaker> hehe
22:58:51 <planetmaker> no worries, I will
22:59:09 <planetmaker> for me it's one of the very very few good rt strategy games ever
23:02:56 <glx> finished A2, but I failed to eradicate ordos (though I killed 27 of its units, including a harvester)
23:03:06 <TrueBrain> nice ;)
23:03:34 <glx> and my mentat said we are fair play ;)
23:08:50 <TrueBrain> O8 has poor concrete to make good defense :(
23:10:15 <TrueBrain> I hate it that I also don't see if a unit is deviated :(
23:10:18 <glx> oh options.cfg is updated everytime menu is closed
23:14:19 <TrueBrain> they killed my sabateur :(
23:27:37 <TrueBrain> k, can't win this war tonight ..
23:27:44 <TrueBrain> O8 is really the most tricky one
23:27:55 <TrueBrain> mostly because I hate deviators
23:27:57 <TrueBrain> they are useless to me
23:28:37 <TrueBrain> 131 new functions
23:28:39 <TrueBrain> lol
23:29:17 <TrueBrain> well, good night :)
23:30:35 <TrueBrain> btw, glx, your last commit moved the comment of 2AF8 etc one char
23:30:54 <TrueBrain> oh, all your additions are off by one whitespace :p
23:31:08 <TrueBrain> glx: please put /* at char 65 ;)
23:31:14 <TrueBrain> keeps things easy :p
23:31:20 <TrueBrain> (yes, I am a nitpick, I know :)
23:31:24 <TrueBrain> oh well .. now really: good night :)
23:31:59 <glx> oh it's not the only one
23:32:07 <glx> I'll fix that