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.

Reply via email to