JoshuaMckee Report post Posted July 24, 2006 with the new install guide it was really quite easy to install. Sorry I seem kind of flaky. Its just that I thought that I got a paying coding job in the game industry and it turned out to be text editing. But now I'm back and now that I got it compiling I hope to start working on stuff soon. Thanks for the installation guide. Share this post Link to post Share on other sites
emajekral Report post Posted July 25, 2006 (edited) with the new install guide it was really quite easy to install... Thanks for the installation guide. Glad to be of service (and thanks Placid for putting the devpaks in one place. I'll fix the rest of the guide to reflect that soon.) Edited July 25, 2006 by emajekral Share this post Link to post Share on other sites
emajekral Report post Posted July 30, 2006 (edited) Technically, that should be -Wall -DELC -DNEW_FRUSTUM -DAUTO_UPDATE -DBUG_FIX_3D_OBJECTS_MIN_MAX -DCOUNTERS -DNEW_TEX -DNEW_ACTOR_ANIMATION -DOPTIONS_I18N Several of the definitions have been obsoleted since the list was first created. (For anyone interested, a full list of all options can be found using grep "#ifdef" *.[ch] | gawk '{ print $2 }' | sort | uniq in the el source directory.) Are these the compile options for the official client? I'm pretty sure that the last two official windows binaries had -DUSE_FRAMEBUFFER at the very least. Are there any others? Edited July 30, 2006 by emajekral Share this post Link to post Share on other sites
Placid Report post Posted July 30, 2006 Users of Microsoft Internet Explorer can now use emajekral's links (previously banned, get a real browser). Share this post Link to post Share on other sites
Arja Report post Posted July 30, 2006 # Locate cal3dwrapper.c and cal3dwrapper.h # Press the control key. # Click those two files. # Press the "Open" button. # Wait while Dev-C++ processes these files. i dont get that bit, should i just open them?? but klicking is already opening them. Share this post Link to post Share on other sites
emajekral Report post Posted July 30, 2006 # Locate cal3dwrapper.c and cal3dwrapper.h # Press the control key. # Click those two files. # Press the "Open" button. # Wait while Dev-C++ processes these files. i dont get that bit, should i just open them?? but klicking is already opening them. Using control and clicking files in Windows (and some other modern window systems) is a way to tell Windows to keep everything you've selected and toggle the state of what you clicked. What I'm telling you to do there is select everything *except* cal3dwrapper.c and cal3dwrapper.h and I show you how to do it really fast. (Takes me 2 seconds) It's just the kindergarten, hold your hand explain later, way of doing it. Sorry. Share this post Link to post Share on other sites
Arja Report post Posted July 30, 2006 Ah thx, and i tried clicking them in the compiler, now it works, i thought it was a kind of special command. Share this post Link to post Share on other sites
Antoris Report post Posted October 4, 2006 I am not very sure what to say here. I did the compilation guide that was last recommended, but i get these 2 errors. I downloaded all the necessary files, and i don't know what else to do. I'll go ahead and post what the compiler in dev-cpp says. Compiler: Default compiler Executing make... make.exe -f "Makefile.win" all gcc.exe -c 2d_objects.c -o 2d_objects.o -I"C:/Dev-Cpp/include" -Wall -DELC -DNEW_FRUSTUM -DAUTO_UPDATE -DBUG_FIX_3D_OBJECTS_MIN_MAX -DCOUNTERS -DNEW_TEX -DNEW_ACTOR_ANIMATION -DOPTIONS_I18N 2d_objects.c: In function `display_2d_objects': 2d_objects.c:658: warning: unused variable `dist' windres.exe -i elc_private.rc --input-format=rc -o elc_private.res -O coff In file included from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4, from elc_private.rc:4: elc_private.rc:4:26: #include nested too deeply windres.exe: no resources make.exe: *** [elc_private.res] Error 1 Execution terminated I know zilch about C, i am a dedicated VB programmer. So C and its variants are a foreign language to me. Any help would be appreciated. Especially since I can't seem to get either of the el exes that come with the original install to run properly. Share this post Link to post Share on other sites
emajekral Report post Posted October 6, 2006 OpenAL + ALUT errors resolved. Unable to reproduce the deeply nested include error, but that's probably a good thing. If there's still an issue with the instructions let me know. I'll be watching my messages and the dev threads for a few days. I was able to get a working build using my instructions on a clean install of Dev-C++, but that doesn't always mean I haven't omitted a step that seems obvious to me. Share this post Link to post Share on other sites
Sistema Report post Posted November 11, 2006 emajekral, you're a legend. *bows* I can now compile under WinXP using Dev-Cpp! I use to be able to do it under MSVC, but never mind that. Next step, patches Share this post Link to post Share on other sites
stalker314314 Report post Posted November 11, 2006 uhm...just to say...current CVS elc.dsp doesn't include all files which create linking problems (or maybe it's just me:/) anyway, missing files are: queue bags storage skills session loading_win highlight list alphamap update (both .h and .c) Share this post Link to post Share on other sites
ttlanhil Report post Posted November 12, 2006 uhm...just to say...current CVS elc.dsp doesn't include all files which create linking problems (or maybe it's just me:/)that's right, old MSVC files are not kept up to date. convert to newer format if needed (the files in CVS are MSVC 2k2, 2k3 or 2k5 need converting, which MSVC will do for you), remove all files, add all code files (yes, there's a reason to remove all first), and it should be close to working. for more info, search forums, I've dealt with this before, covering more issues Share this post Link to post Share on other sites
emajekral Report post Posted February 6, 2007 I use to be able to do it under MSVC, but never mind that. Next step, patches How badly do people here want to be able to use Microsoft dev tools to compile the game? I picked up a license for 2k3 and struggled through the setup tonight. It's a bit tougher than DevCpp but manageable if you don't mind building a few things. Had to build: ogg, vorbis, vorbisfile, cal3d (main project only). ( and elc of course ;P ) Got: 3176 warnings (C++ & new headers? What version of cal3d are we using now? Mostly type coercion warnings: double -> float, float -> int, int -> float; but I got a few "inconsistent dll linkage" warnings wrt Cal) Result: working .exe, sweet new icon , and paralyzed 3 turns by a spider? Easy can do: step by step instructions, links to resources, copy & paste defines, libs, directories Not quite "Next step, patches" yet. Code base has changed a bit in ways that affect me (new semantic for frustum intersect update). Need to merge my stuff with it (one good afternoon + evening). Then patches (want to do it right so I don't know how long it'll take. Mehbe someone wants to make the patches for me once the merge is done). I'm not happy with my code, it's not friendly to work with, but it adds a new perspective. Maybe someone will pick it up/fix it. (Wrong thread for this last paragraph, I know, but I'm keeping lowish profile.) Share this post Link to post Share on other sites
ttlanhil Report post Posted February 6, 2007 msvc 2k5 express is a free download. there are a few people who use msvc of various versions for ELC, including myself for another week or so... some of the system stuff (like listing directories) is different, but nearly all of the code works the same (although you have to avoid gcc-isms as well. IIRC, there's an example when the gcc-ism __inline was changed to the standard __inline__ in order to match MSVC. and it'd probably better match other compilers to boot, so going with the standard is generally a good thing) I generally get 2 link errors with cl as well. for the rest, well, you can get a lot of them under gcc if you compile with many warnings... and you can turn down/off warnings under msvc to get rid of them and as I recall, you can get dev versions of ogg/vorbis/vorbisfile, link them in, and use the DLLs from the people who package it up Share this post Link to post Share on other sites
Roja Report post Posted February 6, 2007 What Cal3d library are you guys compiling with on windows? Whenever I compile the game using DevC++ the dll's are incompatible with those that come with the official game package. I have to use some older cal3d dll's that I got from somewhere(don't remember now). Share this post Link to post Share on other sites
ttlanhil Report post Posted February 6, 2007 I have to make my own as well. because of that, shortly after I started releasing clients for others to use, I changed the file name to cal3d_ttlanhil so it wouldn't clash with the official one. unless you have the same .lib file when linking, you usually can't use the same .dll (since the small .lib you link in to what you compile says where in the .dll stuff is and all that fun stuff) Share this post Link to post Share on other sites
LabRat Report post Posted February 6, 2007 I also have to make my own, calel.dll and calel_extra.dll in my case. Share this post Link to post Share on other sites
Roja Report post Posted February 6, 2007 Ok, do you make your own from the latest cal3d version out? And then you just compile the cal3d stuff on your own as the it is, or do you make other changes and stuff? Share this post Link to post Share on other sites
ttlanhil Report post Posted February 6, 2007 downloaded Cal3d version 0.10, and compiled just the cal3d library part (there are several others, from memory, which I didn't have any need for). no changes needed to it, other than the output file name. just compiled that, put the .dll in the EL dir, and used the .lib it created for compiling EL Share this post Link to post Share on other sites
kl4Uz Report post Posted March 26, 2007 (edited) Here's an update on emajekral's guide Please make sure you follow his steps of setting up the compiler, cvs, etc. This is just additional information. Set Up Compiler In addition to the libraries he mentioned you need the following libraries to compile ELC with Dev-C++ zlib libpng libjpeg libtiff 3.4 (not 3.6!) sdl_images Some devpaks have dependencies on other devpaks, so you may need those devpaks too. Download them via Tools > Check for Updates/Packages Choose the devpak.org server, since the primary one doesn't seem to be active at the moment. Configure Your Project Ignore emajekrals "Configure Your Project" part. Makefile.win was updated on the 25th of March by Lachesis and it works just fine. So instead of what emajekral wrote, hit alt+p > go to the makefile tab > check "Use Custom Makefile" and select Makefile.win Compile your Project You may need to make a copy of your make.defaults and rename it to make.conf. Otherwise you may will end up with dev-c++ telling you that you can't use make -f. There might be some errors about missing libraries and includes, even though you've got them installed. Make sure they are exactly in the directory where dev-c++ wants them. Dev-c++ error messages usually let you see which one that is. In addition you can use the following commands in make.conf to point to libraries/includes e.g. #EXTRA_INCLUDES=-IC:\\Programme\\Dev-Cpp\\Include #EXTRA_LIBS=-lalut (make sure to uncomment these lines) Done! If everything went right, you should have your own client now Edited March 27, 2007 by kl4Uz Share this post Link to post Share on other sites
Placid Report post Posted March 27, 2007 (edited) Can someone update the following bits of emajekral's post to point to http://el.beplacid.com/dev/win-libs/ as opposed to http://beplacid.com/~placid/elc-dev/win-libs/ for the following links: * Cal3d and cal3d_extra * Internationalization support library * XML support library * SDL development package * Ogg Vorbis Been doing a bit of spring cleaning and would prefer the consistency Thanks! Edited March 28, 2007 by Placid Share this post Link to post Share on other sites
Beaverhunter Report post Posted March 29, 2007 (edited) This is a temporary output of the linking errors I get. Ill clean this up later. Edit: Oki, pretty much done with the compiling, works. I'm using MSVS 2005 btw, Ill make a guide on how to compile on it. Edit 2: Oki, got it compiled... But weird error occuring. The map in PL Cave, loads fine but when on any other map the client crashes. If someone has experience of MSVS 2005 compiling then please help out and pm me in game or here. Edit 3: Oki again:p I found the problem. Ill start to work on a Compile guide later. Edited March 29, 2007 by Beaverhunter Share this post Link to post Share on other sites
ttlanhil Report post Posted March 29, 2007 compile the cal3d library. put the headers where MSVC can use them. put the .lib where MSVC can find it. ass cal3d to the linker options. remove all files from your project. add all files to your project. set the project to compile as 'C' code, set the .cpp files to compile as 'C++' code. recompile. most to all of those errors should be fixed then if there's still problems, give info about them as well as your compile info. version of compiler (msvc 2k5, judging by what you've told me, but that doesn't help anyone else). your project settings. and problems you had getting the libs ready for ELC. all the boring important stuff Share this post Link to post Share on other sites
BloodSucker Report post Posted April 1, 2007 Followed the updated guide for windows CVS compilation, all libaries are theoretically installed, but there's one missing I guess... i got such errors: [Linker error] undefined reference to `glPushMatrix@0' [Linker error] undefined reference to `glMultMatrixf@4' [Linker error] undefined reference to `glTranslatef@12' etc. etc. Dunno what the problem is... im kinda n00bish in Cpp. I'm just trying to get the newest client with eye candy stuff Share this post Link to post Share on other sites
Lachesis Report post Posted April 1, 2007 That error basicly means that the executable needs to be linked against OpenGL. What compiler/linker are you using? If you are not using Makefile.win, did you make sure to specify all the ncessary libraries in the project options? Share this post Link to post Share on other sites