Author Topic: Modding newbie.  (Read 4751 times)

Teiman

  • Posts: 286
  • Turrets: +0/-0
Modding newbie.
« on: July 10, 2006, 08:51:37 am »
I want to learn how to mod for Tremulous.

My steps:

1) I have downloaded the source code with subversion.
2) Imported on Anjuta as a proyect.
3) Tweak the alien scanner, so the dots fade-out with distance.
4) Compile.. ok, everything compile.
5) rename the vms.pk3 file so the engine load my versions.

Problems:
unsolved) I am unable to test my newmod, because the engine seems to need a cgame??.qvm but the code compile has cgame??.so

How I can generate this qvm from my so file? how can I force the engine to use the .so file?.

Also I need a tutorial to mod for Quake3, I have no idea these cg????.qvm  c????.qvm and ui????.qvm files are for.  UI seems something about hud stuff, but why 2 files for the mod? what run at server side and what run at client side?. Tremulous will use any stock engine, or his own one?

I have some background on Quake engines (I have my own engine, Telejano, and contributed with code for some old nexuiz build )  but no idea about how Quake3 work.  I really need a tutorial about Quake3 modding, but I cant get a good one on google. Help!!.

Thorn

  • Guest
Re: Modding newbie.
« Reply #1 on: July 10, 2006, 03:23:23 pm »
Quote from: "Teiman"
I want to learn how to mod for Tremulous.

My steps:

1) I have downloaded the source code with subversion.
2) Imported on Anjuta as a proyect.
3) Tweak the alien scanner, so the dots fade-out with distance.
4) Compile.. ok, everything compile.
5) rename the vms.pk3 file so the engine load my versions.

Problems:
unsolved) I am unable to test my newmod, because the engine seems to need a cgame??.qvm but the code compile has cgame??.so

How I can generate this qvm from my so file? how can I force the engine to use the .so file?.

Also I need a tutorial to mod for Quake3, I have no idea these cg????.qvm  c????.qvm and ui????.qvm files are for.  UI seems something about hud stuff, but why 2 files for the mod? what run at server side and what run at client side?. Tremulous will use any stock engine, or his own one?

I have some background on Quake engines (I have my own engine, Telejano, and contributed with code for some old nexuiz build )  but no idea about how Quake3 work.  I really need a tutorial about Quake3 modding, but I cant get a good one on google. Help!!.



Welll theres only one question i can answer , UI - User interface

Dustin

  • Posts: 111
  • Turrets: +0/-0
    • http://alaric.ath.cx/~dustin/cms/index.php
Modding newbie.
« Reply #2 on: July 10, 2006, 03:26:01 pm »
At first, i only saw the .so files, but then I looked inside the vm folder inside the base folder.. so.. check
build/release*/base/vm
cgame is the client side of the game (i believe) and game is the server (also speculation)

rasz_pl

  • Guest
Re: Modding newbie.
« Reply #3 on: July 12, 2006, 06:41:56 am »
Quote from: "Teiman"
3) Tweak the alien scanner, so the dots fade-out with distance.


GJ, I vould love to see it in the release.

Teiman

  • Posts: 286
  • Turrets: +0/-0
Modding newbie.
« Reply #4 on: July 12, 2006, 08:28:22 pm »
Quote from: "Dustin"
At first, i only saw the .so files, but then I looked inside the vm folder inside the base folder.. so.. check
build/release*/base/vm
cgame is the client side of the game (i believe) and game is the server (also speculation)


Oh my Good! True!.. the nice nice nice lovable qvm files are there!! :D

The code is that one, I will install the qvm files and give it a try! :D

Thanks everyone!

-----
UPDATE:

The game croak about some random txt file. Maybe I sould use a older version? I have started with the SVN one that maybe need new resources I dont have. I will try with the version the game include..

UPDATE:

Its incredible anoying to copy these *.qvm files, create a zip file, rename the zip file, start a server, and connect with a cliente, but work!.. oh my god!.. hehehe.. I think a few script can make this easy.  So now I can make mods for this game, Hurra!!!

Teiman

  • Posts: 286
  • Turrets: +0/-0
Re: Modding newbie.
« Reply #5 on: July 12, 2006, 09:10:44 pm »
Quote from: "rasz_pl"
Quote from: "Teiman"
3) Tweak the alien scanner, so the dots fade-out with distance.


GJ, I vould love to see it in the release.


Hehehehe...

Here is the changed code:

Code: [Select]


void CG_AlienSense( rectDef_t *rect )
{
  int     i;
  vec3_t  origin;
  vec3_t  relOrigin;
  vec4_t  buildable = { 1.0f, 0.0f, 0.0f, 0.7f };
  vec4_t  howfarcolor   = { 0.0f, 0.0f, 1.0f, 1.0f };//Client color that fade
  float len = 0.0f;
  float howsoft;
 
  VectorCopy( entityPositions.origin, origin );

  //draw human buildables
  for( i = 0; i < entityPositions.numHumanBuildables; i++ )
  {
    VectorClear( relOrigin );
    VectorSubtract( entityPositions.humanBuildablePos[ i ], origin, relOrigin );

    if( VectorLength( relOrigin ) < ALIENSENSE_RANGE )
      CG_DrawDir( rect, relOrigin, buildable );
  }

  //draw human clients
  for( i = 0; i < entityPositions.numHumanClients; i++ )
  {
    VectorClear( relOrigin );
    VectorSubtract( entityPositions.humanClientPos[ i ], origin, relOrigin );
   
    len = VectorLength( relOrigin ) ;
    if( len < ALIENSENSE_RANGE ) {
  howsoft = 0.1f - len/ALIENSENSE_RANGE;
  howfarcolor[3] = howsoft;
          CG_DrawDir( rect, relOrigin, howfarcolor );
     }
  }
}

Dustin

  • Posts: 111
  • Turrets: +0/-0
    • http://alaric.ath.cx/~dustin/cms/index.php
Modding newbie.
« Reply #6 on: July 13, 2006, 12:23:07 am »
Yeah, use the 1.1.0 code for your changes, OR package the ui folder in the SVN distribution into a new .pk3 and place it in base, because it contains the menus.txt file you need. And some updated menus. Also, why start a server and connect with a client? Why not start a server from within Tremulous and set it to NOT Dedicated, so you start and join at the same time? Just for testing? (I actually test my mods using \devmap, just to be quick about not having to start a server at all)
EDIT: By the way, even though I don't play alien.. I like that change!

Teiman

  • Posts: 286
  • Turrets: +0/-0
Modding newbie.
« Reply #7 on: July 13, 2006, 12:29:51 am »
Quote from: "Dustin"
Yeah, use the 1.1.0 code for your changes, OR package the ui folder in the SVN distribution into a new .pk3 and place it in base, because it contains the menus.txt file you need. And some updated menus. Also, why start a server and connect with a client? Why not start a server from within Tremulous and set it to NOT Dedicated, so you start and join at the same time? Just for testing? (I actually test my mods using \devmap, just to be quick about not having to start a server at all)
EDIT: By the way, even though I don't play alien.. I like that change!


I need 2 clients to test the radar, the server with a human, the client with a alien.

Hehehe. thanks!

Norfenstein

  • Posts: 628
  • Turrets: +81/-78
Modding newbie.
« Reply #8 on: July 13, 2006, 01:13:39 am »
You shouldn't need to package the QVM's into PK3's if you set sv_pure to 0.

Teiman

  • Posts: 286
  • Turrets: +0/-0
Modding newbie.
« Reply #9 on: July 13, 2006, 09:26:05 am »
Quote from: "Norfenstein"
You shouldn't need to package the QVM's into PK3's if you set sv_pure to 0.


Thanks norf.

You know the code blame you for the x4 knockback of Teslas?.. Dawn you!! . I play as mara often!! :DDDD

Looks like servers work with sv_pure to 1, or something (I have no idea, I am new on quake3). This is sad to me. On Quake1 you can mod everything and the server will not care. The need to pack everything into a pk3 file is really boring and lame. Anyway I think the sv_pure will be for good, to stop people doing fullbright skins, etc..

Dustin

  • Posts: 111
  • Turrets: +0/-0
    • http://alaric.ath.cx/~dustin/cms/index.php
Modding newbie.
« Reply #10 on: July 13, 2006, 09:53:03 am »
Even in pk3 files, Sv_pure=1 servers will reject your pk3 files. If you replace vms-1.1.0.pk3, it'll try to download the original one. If you give your mod pk3 a new name, it will be ignored due to sv_pure=1 (only when using another server though. sv_pure=1 locally will work just fine)

yeye_olive

  • Guest
Modding newbie.
« Reply #11 on: August 18, 2006, 03:41:08 am »
I hacked the source code a bit and I managed to get a modified vms-1.1.0.pk3 accepted by a server. That's pretty useful for testing. For example, I have added a "human sense" similar to the alien sense.

kevlarman

  • Posts: 2737
  • Turrets: +291/-295
Modding newbie.
« Reply #12 on: August 18, 2006, 04:47:42 am »
Quote from: "yeye_olive"
I hacked the source code a bit and I managed to get a modified vms-1.1.0.pk3 accepted by a server. That's pretty useful for testing. For example, I have added a "human sense" similar to the alien sense.
that would be called cheating.
Quote from: Asvarox link=topic=8622.msg169333#msg169333
Ok let's plan it out. Asva, you are nub, go sit on rets, I will build, you two go feed like hell, you go pwn their asses, and everyone else camp in the hallway, roger?
the dretch bites.
-----
|..d| #
|.@.-##
-----

yeye_olive

  • Guest
Modding newbie.
« Reply #13 on: August 18, 2006, 11:46:46 am »
Quote from: "kevlarman"
that would be called cheating.

Totally, and that is not my purpose. What I want is to be able to code and test a few mods in a real game (ie without being the only player on my own server). Is there a more clever way to achieve this than hacking the code like I did?

kevlarman

  • Posts: 2737
  • Turrets: +291/-295
Modding newbie.
« Reply #14 on: August 19, 2006, 07:11:37 am »
Quote from: "yeye_olive"
Quote from: "kevlarman"
that would be called cheating.

Totally, and that is not my purpose. What I want is to be able to code and test a few mods in a real game (ie without being the only player on my own server). Is there a more clever way to achieve this than hacking the code like I did?
you could get a few people together to download the code (and run that server), or you could play on servers without sv_pure enabled.
Quote from: Asvarox link=topic=8622.msg169333#msg169333
Ok let's plan it out. Asva, you are nub, go sit on rets, I will build, you two go feed like hell, you go pwn their asses, and everyone else camp in the hallway, roger?
the dretch bites.
-----
|..d| #
|.@.-##
-----