http://ioquake.org/forums/viewtopic.php?f=13&t=116
Q: I made some UI changes to ioq3 and recompiled it, but when I go to run it, I get stock Quake 3 menus/UI! What gives? A: QVMs probably. QVMs are probably taking precedence, there's a command line you can use that forces .so instead. From what benmachine says, try: "+set sv_pure 0 +set vm_ui 0" on the command line "which is good for testing especially if you want to use gdb." So something like "+set sv_pure 0 +set vm_ui 0 +set vm_game 0 +set vm_cgame 0" should work. > Quake3 uses either a DLL or a so called "QVM" file. Ready for the hard > part? > > You've seen that *.c code is compiled by your native compiler into a *.dll > file. OK. The same *.c can be compiled by a different C compiler (called > lcc) and then converted into VM code. This compiler distributed as part of > the tools for ioquake3 as well. So this means you can have a mod for > Quake3 > that uses native x86 code, but if, say your friend had a Mac or Sun system > or something really really obscure, you could send them the QVM file, > which > is functionally identical, but run in a VM within Quake3 (albeit, slower). > This also made "safer" mods, since a DLL could contain a virus, where as a > QVM file is, well, VM code that only runs in Quake3. > > I believe the option to force using the DLL (instead of the QVM file, > which > is in one of the *.pk3 files) is documented on the ioquake3 website. It > requires command line parameters, so you may want to make a *.bat file to > do > it. > > > > On Thu, Sep 22, 2011 at 10:14 AM, Kim Huynh <k...@itsaver.com> wrote: > >> Thank you for all your help. I can run it now. However, I am >> encountering >> a new problem. I have been searching via the forum to see if there is >> any >> answer to this problem, but no success yet. >> >> I am able to build and run ioquake3.exe in debug mode. However, when I >> try >> to change the code (ui_credits.c) to output different messages for the >> Exit >> menu, it doesn't seem to work. In other words, the same old Exit menu >> still >> appears on the screen with the new exe and uix86.dll. In addition, I >> can't >> seem to set a breakpoint in UI_CreditMenu_Draw( void ) function. >> >> Does anyone know when/how ioquake3.exe load uix86.dll? One interesting >> thing I found is that when I deleted uix86.dll, ioquak3.exe still runs >> with >> no error reported. I did look into the project setting of ioquake3.exe, >> but >> can't seem to find anything. >> >> Thank you for your helps, >> Kim >> >> >> >> On Wed, Sep 21, 2011 at 2:12 PM, Patrick Baggett < >> baggett.patr...@gmail.com> wrote: >> >>> Yes, there are 3 things in total: >>> 1) ioquake3 binary (EXE) file >>> 2) ioquake3 updated PK3 files >>> 3) PAK0.PK3 from Quake3 CD. >>> >>> I'm currently behind a web filtering system, otherwise I'd just give >>> you >>> direct links to what I am saying. From the IOQuake3 site, you can find >>> the >>> first two things you need: the ioquake3 EXE (which is the game's code) >>> and >>> the updated PK3 files (pak1.pk3, pak2.pk3, etc. doesn't include >>> pak0.pk3 as >>> previously established). >>> >>> If you're running on Windows, you should be able to just download an >>> installer -- it contains both of the above and in a nice little >>> user-friendly interface. While running through the installer, make note >>> of >>> where you install it. It will be something like "C:\Program >>> Files\ioquake3" >>> by default, but it can vary depending on whether you're running a >>> 64-bit >>> version of windows or not. After that, if you were to go to the >>> directory >>> where you just installed everything, you should have the ioquake3 EXE >>> (maybe >>> called ioq3.exe) and a folder called "baseq3". Inside of the "baseq3" >>> folder >>> are the pak1.pk3, pak2.pk3, etc files. You need to copy pak0.pk3 from >>> your >>> Quake3 CD to this folder. After that, you should be set. All of these >>> instructions should be on the ioquake3 website and are probably more >>> detailed, so try reading through it and seeing if that solves your >>> problems. >>> >>> Good luck, >>> >>> Patrick >>> >>> >>> >>> On Wed, Sep 21, 2011 at 12:52 PM, Kim Huynh <k...@itsaver.com> wrote: >>> >>>> Does that still mean I need to install ioquake3.exe to get pak1.pk3 >>>> and >>>> the rest of pk3 files? Sorry I am new to this and thank you for your >>>> help! >>>> >>>> Kim >>>> >>>> On Wed, Sep 21, 2011 at 1:32 PM, Patrick Baggett < >>>> baggett.patr...@gmail.com> wrote: >>>> >>>>> It should be in a folder called "baseq3", and it should include the >>>>> other pk3 files. These pk3 files are found on the ioquake3 website. I >>>>> forget >>>>> how many there are -- perhaps 8 or so. >>>>> >>>>> In summary, you need: >>>>> >>>>> QUAKE3 FOLDER: >>>>> * ioquake3.exe (from ioquake3) >>>>> * baseq3/ >>>>> * pak0.pk3 (from CD) >>>>> * pak1.pk3 (from ioquake3) >>>>> * pak2.pk3 (from ioquake3) >>>>> .... >>>>> >>>>> >>>>> On Wed, Sep 21, 2011 at 12:26 PM, Kim Huynh <k...@itsaver.com> wrote: >>>>> >>>>>> I do have the CD now. Where should I copy the file to? The same >>>>>> directory as the executable? >>>>>> >>>>>> Thanks again >>>>>> Kim >>>>>> >>>>>> On Wed, Sep 21, 2011 at 11:08 AM, Patrick Baggett < >>>>>> baggett.patr...@gmail.com> wrote: >>>>>> >>>>>>> This is on the Quake3 arena CD. You have to buy the game to play it >>>>>>> -- >>>>>>> ioquake3 is just the game's code (EXE), it does (and cannot) >>>>>>> contain the >>>>>>> game's media (maps, models, sounds, etc.) >>>>>>> >>>>>>> Patrick >>>>>>> >>>>>>> On Wed, Sep 21, 2011 at 10:03 AM, Kim Huynh >>>>>>> <k...@itsaver.com>wrote: >>>>>>> >>>>>>>> Hi >>>>>>>> >>>>>>>> I was able to build quake3 executable but when I ran it, it said >>>>>>>> pak0.pk3 is missing. Where can I get this file? Is there any >>>>>>>> instruction >>>>>>>> on how I can use this file? >>>>>>>> >>>>>>>> Thanks >>>>>>>> Kim >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> ioquake3 mailing list >>>>>>>> ioquake3@lists.ioquake.org >>>>>>>> http://lists.ioquake.org/listinfo.cgi/ioquake3-ioquake.org >>>>>>>> By sending this message I agree to love ioquake3 and libsdl. >>>>>>>> >>>>>>> >>>>>>> >>>>>>> _______________________________________________ >>>>>>> ioquake3 mailing list >>>>>>> ioquake3@lists.ioquake.org >>>>>>> http://lists.ioquake.org/listinfo.cgi/ioquake3-ioquake.org >>>>>>> By sending this message I agree to love ioquake3 and libsdl. >>>>>>> >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> ioquake3 mailing list >>>>>> ioquake3@lists.ioquake.org >>>>>> http://lists.ioquake.org/listinfo.cgi/ioquake3-ioquake.org >>>>>> By sending this message I agree to love ioquake3 and libsdl. >>>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> ioquake3 mailing list >>>>> ioquake3@lists.ioquake.org >>>>> http://lists.ioquake.org/listinfo.cgi/ioquake3-ioquake.org >>>>> By sending this message I agree to love ioquake3 and libsdl. >>>>> >>>> >>>> >>>> _______________________________________________ >>>> ioquake3 mailing list >>>> ioquake3@lists.ioquake.org >>>> http://lists.ioquake.org/listinfo.cgi/ioquake3-ioquake.org >>>> By sending this message I agree to love ioquake3 and libsdl. >>>> >>> >>> >>> _______________________________________________ >>> ioquake3 mailing list >>> ioquake3@lists.ioquake.org >>> http://lists.ioquake.org/listinfo.cgi/ioquake3-ioquake.org >>> By sending this message I agree to love ioquake3 and libsdl. >>> >> >> >> _______________________________________________ >> ioquake3 mailing list >> ioquake3@lists.ioquake.org >> http://lists.ioquake.org/listinfo.cgi/ioquake3-ioquake.org >> By sending this message I agree to love ioquake3 and libsdl. >> > _______________________________________________ > ioquake3 mailing list > ioquake3@lists.ioquake.org > http://lists.ioquake.org/listinfo.cgi/ioquake3-ioquake.org > By sending this message I agree to love ioquake3 and libsdl. _______________________________________________ ioquake3 mailing list ioquake3@lists.ioquake.org http://lists.ioquake.org/listinfo.cgi/ioquake3-ioquake.org By sending this message I agree to love ioquake3 and libsdl.