Back to the Vavoom Forum Archives


Forum

Some Questions about Editing + Mod Idea

Thu, 17 Dec 2009 23:29:17

kraigc

Hello, I've been interested in Vavoom for quite some time... I have a couple questions for a mod I'd like to do in Vavoom. 1.) Multiplayer-oriented mods: Are they possible? (This is vital, because my mod idea is multiplayer oriented) 1a.) If so, are teams allowed? (I'll get to the mod idea below) 2.) How do I physically structure a mod? - As in, how do I with Version 1.30 onward, structure a mod so that my progs, DECORATES, and etc. will be read properly? I dunno if the information found at the Wiki here is current, no offense. 3.) Speaking of Progs, I'm new to VavoomC. However, I have programmed in ACS, DECORATE (I come from the ZDoom forums looking for more customization and such in an engine) and know Intermediate C# and I dunno where to start. I don't want to just edit small stuff, I'd like to make something in the end that's tangible. 4.) With that in mind, is it possible to code in both DECORATE and VavoomC? If so, can I define new DECORATE Action Functions in VavoomC? 5.) Finally... the mod idea. I want to see if it's tangible. I want to make a team-based multiplayer mod influenced by the original Quake mod called Quake Team Fortress (not TF2 or TFC so much). I've got sprites and resources made up when I was using Skulltag/ZDoom but the engines weren't flexible enough. If someone's willing to point me in the right direction is fine... but I might need some help considering I'm a newbie to this engine. Also, my second post here. I hope to get more involved around here... this engine is really underrated and I do appreciate it for it's Quake-like rendering and networking, and I'd like to very much be a part of that. <!-- s:mrgreen: --><img src="{SMILIES_PATH}/icon_mrgreen.gif" alt=":mrgreen:" title="Mr. Green" /><!-- s:mrgreen: -->
Fri, 18 Dec 2009 17:50:47

Crimson Wizard

[quote="kraigc":31xj345b] 1.) Multiplayer-oriented mods: Are they possible? (This is vital, because my mod idea is multiplayer oriented) Yes, ofcourse, why not. We are making one, and already released version 1.1 here: <!-- m --><a class="postlink" href="http://korax-heritage.com/karena/index.php">http://korax-heritage.com/karena/index.php</a><!-- m --> <!-- s:) --><img src="{SMILIES_PATH}/icon_smile.gif" alt=":)" title="Smile" /><!-- s:) --> [quote="kraigc":31xj345b] 1a.) If so, are teams allowed? (I'll get to the mod idea below) If you mean, is there easy way to use player teams without scripting them yourself, then no. In our mod I had to write them from scratch in progs. [quote="kraigc":31xj345b] 2.) How do I physically structure a mod? - As in, how do I with Version 1.30 onward, structure a mod so that my progs, DECORATES, and etc. will be read properly? I dunno if the information found at the Wiki here is current, no offense. Not sure I understand this correctly, you mean, how you organize the files for your mod so that it could be played? Well, progs go to "progs" folder, decorates go to "actors" folder, music to "music" folder etc. [quote="kraigc":31xj345b] 3.) Speaking of Progs, I'm new to VavoomC. However, I have programmed in ACS, DECORATE (I come from the ZDoom forums looking for more customization and such in an engine) and know Intermediate C# and I dunno where to start. I don't want to just edit small stuff, I'd like to make something in the end that's tangible. That would be a real horror to answer this question <!-- s:( --><img src="{SMILIES_PATH}/icon_sad.gif" alt=":(" title="Sad" /><!-- s:( --> In fact I even don't know how to start answering myself. Maybe you could make your question somehow more precise? [quote="kraigc":31xj345b] 4.) With that in mind, is it possible to code in both DECORATE and VavoomC? If so, can I define new DECORATE Action Functions in VavoomC? Yes. There's vavoom_decorate_defs.xml file with such definitions. You can create one for your project and these defs will be merged with common ones to be used to read your DECORATE. [quote="kraigc":31xj345b] 5.) Finally... the mod idea. I want to see if it's tangible. I want to make a team-based multiplayer mod influenced by the original Quake mod called Quake Team Fortress (not TF2 or TFC so much). I've got sprites and resources made up when I was using Skulltag/ZDoom but the engines weren't flexible enough. If someone's willing to point me in the right direction is fine... but I might need some help considering I'm a newbie to this engine. Check our mod to see what's possible to make <!-- s:) --><img src="{SMILIES_PATH}/icon_smile.gif" alt=":)" title="Smile" /><!-- s:) --> <!-- m --><a class="postlink" href="http://korax-heritage.com/karena/index.php">http://korax-heritage.com/karena/index.php</a><!-- m --> By the way, our code is open, so you can get one from SVN if you like and see how things are done there: <!-- m --><a class="postlink" href="http://korax.svn.sourceforge.net/svnroot/korax/trunk/karena">http://korax.svn.sourceforge.net/svnroo ... unk/karena</a><!-- m -->
Sun, 20 Dec 2009 16:33:08

kraigc

thanks for the relatively quick reply. I took a look at your mod... interesting stuff there... considering I was about to give up, this mod of yours has given me hope. Allow me to rephrase 3 specifically. I'm curious on how to handle such things as switching player classes, capture the flag mode... and I know someone wanted me, when I was using Skulltag/ZDoom to figure out how to zoom for a specific player class (A psychotic sniper/chainsaw guy). Your mod has given me some insight (although player-specific zoom is still kind of up in the air)... I'm going to look at it now I have some time off from school.
Sun, 20 Dec 2009 23:45:57

Crimson Wizard

Well, easiest thing is to tell how we did this for Korax Arena mod (plus you can have both our game&code before your eyes <!-- s;) --><img src="{SMILIES_PATH}/icon_wink.gif" alt=";)" title="Wink" /><!-- s;) -->). I must warn, however, that many things there were not done in couple of days, it was rather long way and many stuff required some other stuff to be done beforehand. In other words, what's easy to tell is not so easy to do. I'll try to give certain tips there, though I am afraid they won't be enough to complete your task. It's just something to start with. [quote="kraigc":1kgxgk2o]I'm curious on how to handle such things as switching player classes, In common progs there's a GameInfo class which stores an array of available game classes, PlayerClasses variable. You can feed it with your own classes, which must be descendants of PlayerPawn class (it is a base class for player-controlled actors). Meanwhile, there is a PClass variable in BasePlayer class. When player is spawned, game uses it to know which player class to take from PlayerClasses array and put into game. This is done in common progs by default, so there's a chance you won't need to write your own functions for this, just feed PlayerClasses array with proper values; then make selection in game menu, or something, which would set 'class' console variable depending on user choice. [quote="kraigc":1kgxgk2o] capture the flag mode Well, if to put this simple, we created a class for flag object in progs. This flag has all custom behavior, which depends on its state. State may be "sits on base", "captured" and "dropped". When on base or dropped it can be captured by opposing team players by touching it. When captured, it remembers capturer and straightforwardly follows him/her everywhere (technically, flag is just being moved after player, updating its position every tick). When player, who is carrying captured flag, touch his own flag, which is "on base", team scores and enemy flag is teleported back to the base. Bases are represented simply by "map spot" objects; their references are stored in Game object. Ofcourse, CTF required Teams. I wrote PlayerTeam class, it stores team score, team colour and some other stuff, it also keeps list of players sorted by their personal scores for convenience. When game is initialized, two teams are created. When players spawn into the game they are being assigned to team. Each player has Team reference, and vice versa, Team has references to all players (as mentioned above). What else? Well, this may be done elsewise, but I wrote GameModel class as a base class for all "advanced" game modes, primarily for easier programming game rules and behavior. Such modes as CTF and Domination are controlled by descendants from GameModel, these are classes called simply GameCTF, GameDomination, etc. When game is initialized, an object of corresponding game class is created. This object usually stores references to important game objects, such as Flags and Bases in CTF, and also has numerous functions which serve as event handlers. [quote="kraigc":1kgxgk2o] how to zoom for a specific player class You mean, like sniper scope? It can be done by changing 'FOV' console variable. By the way, if you downloaded our mod, you can try this; select "The Hero" character in player setup, find Longbow weapon and press and hold fire button: you will get zoom over time.
Thu, 08 Apr 2010 02:26:22

kraigc

I have been looking over, whenever I can, the Korax Arena source code (VavoomC). I think I have it figured out, but when I go to compile I run into TONS of compiling errors, especially with in-line DECORATE in PlasmaShot.vc and the like. I try to compile the existing source to figure out the mere process. I'm stuck :<
Thu, 08 Apr 2010 12:45:00

Crimson Wizard

[quote="kraigc":dmviblnp]I have been looking over, whenever I can, the Korax Arena source code (VavoomC). I think I have it figured out, but when I go to compile I run into TONS of compiling errors, especially with in-line DECORATE in PlasmaShot.vc and the like. I try to compile the existing source to figure out the mere process. I'm stuck :< Are you sure you are using last revisions of VavoomC compiler and Vavoom engine? We compile and test the game every now and then (especially after serious changes were made). There's a chance though that we forgot to update the code to make it compatible with latest Vavoom... poke Firebrand <!-- s:roll: --><img src="{SMILIES_PATH}/icon_rolleyes.gif" alt=":roll:" title="Rolling Eyes" /><!-- s:roll: -->
Thu, 08 Apr 2010 14:28:12

kraigc

[quote="Crimson Wizard":2x8nuilc][quote="kraigc":2x8nuilc]I have been looking over, whenever I can, the Korax Arena source code (VavoomC). I think I have it figured out, but when I go to compile I run into TONS of compiling errors, especially with in-line DECORATE in PlasmaShot.vc and the like. I try to compile the existing source to figure out the mere process. I'm stuck :< Are you sure you are using last revisions of VavoomC compiler and Vavoom engine? We compile and test the game every now and then (especially after serious changes were made). There's a chance though that we forgot to update the code to make it compatible with latest Vavoom... poke Firebrand <!-- s:roll: --><img src="{SMILIES_PATH}/icon_rolleyes.gif" alt=":roll:" title="Rolling Eyes" /><!-- s:roll: --> I think so, I'm using Vavoom 1.31 and the Vavoom 1.31 vcc, as well as Vavoom 1.31 progs + Karena SVN.
Thu, 08 Apr 2010 16:24:45

Crimson Wizard

I 've just compiled KArena using last VCC revision and got NO compiler errors.
Fri, 09 Apr 2010 13:00:31

Firebrand

Could you post which errors you are getting? I don't have the means to test compiling the source as of now, but just after the 1.31 release, compiling the source didn't send any errors for me.

Back to the Vavoom Forum Archives