fKd wrote:hi, so ive started looking into this mod.
//////
im using entityplus-0.8.1.
so i load the mod, np im in the menu, if i hit new game the dink sound goes on infinite loop, its crashed. i ctrl alt del to bring up the task manager and the mouse is not drawing lol. so i run it again and load the example map via console. all good, shoot the wall, kill a few bots and then bam! crasssssh! no error screen thrown up by q3 or anything
running 1.32c, win7 64.
////// fixed, i had too many maps in my base3q dir
chur
I've had another similar report from someone else, also running win7 64-bit. Not sure why the number of maps in your baseq3 folder would cause this but if that fixes it, I'm happy
fKd wrote:
also, random question, with :
"2.18 – target_skill
This sets the skill level for the next map that will be loaded. The changed skill level is not applied
immediately, so usually this will be used in a level that also implements a target_mapchange entity.
Keys:
• targetname : ativating(typo?) entity points to this.
• skill : the skill level to apply. 1 is easiest, 5 is hardest (default = 2)."
is this overrun by individual skill levels applied to bots through the target_botspawn ent?
target_skill simply modifies the g_spskill cvar and changing that cvar requires a map restart or a map load to actually be applied. The skill key on target_botspawn works relative to the currently applied g_spskill setting. So in short, yes, the individual bot skill level should still apply after using target_skill.
I just want to say, great job on this mod thing. I wonder how did it avoid my attention for such a long time, seriously.
I got an idea for a single player campaign already, although it'd require some more modifications to the game itself. Still, E+ seems to be more than enough to mash up a prototype before one can get someone to code a separate mod, so I'm still satisfied with what I've got here and will get to work right away. In the meantime, I'll wait for further updates on this piece of awesomeness, and hopefully use it to get something done myself.
Just list the features you'd like to see included. The ones I can implement I will consider putting in.
Also, the mod is open source. It's code is available at the Google code project page. You (or someone can add to that or fork off their own branch.
The "Dark Conjunction" (singleplayer mod for quake 3) has a saving system and the source code of this mod is available here : http://www.fileplanet.com/hosteddl.aspx ... 1_1_.0.zip
With this, it's maybe more easy for you to add the saving system.
I don't know if it is necessary, but while fiddeling around with the target_speakers I asked myself how complicated it would be to implement something like a volume key for the editor? Or a circle displaying the sound's radius, similiar to the light circle. That would be awesome.
I have no such access to the sound engine from the mod sourcecode, so unfortunately, a volume key is out of the question. Am afraid you'll have to tweak the volume of sound effects in an audio editing program.
As for the in-editor radius, that's GtkRadiant's sourcecode and that has nothing to do with Quake 3 itself. So again I'm going to have to disappoint you there
Would EntityPlus be what I need if I wanted to make a map that could do:
- trigger a specific spawn of an enemy bot--and able to specify what bot(name, model, and skill) to spawn.
- trigger a specific door upon the death of a specific bot.
- trigger a specific door when a specific collection of doors have been triggered already.
Example scenario:
- A player fights through a series of rooms, each of which has a single bot that spawns upon trigger, and that after each room is completed(trigger when dot dies), only then another door is triggered as a result from the previous completed rooms(triggers).
You see that "monster_infantry" triggers the door2 when the infantry dies.
Perhaps change monster_infantry to info_player_bot, and add some new parameters.
BTW, I can live without the logic of having a trigger execute when a collection of other doors(triggers) have been executed. I can just make the last door be 5 doors(walls/barriers) thick, each barrier triggered by the death of a specific bot.
Last edited by deqer on Tue Aug 23, 2011 5:36 am, edited 1 time in total.
deqer wrote:Would EntityPlus be what I need if I wanted to make a map that could do:
- trigger a specific spawn of an enemy bot--and able to specify what bot(name, model, and skill) to spawn.
- trigger a specific door upon the death of a specific bot.
- trigger a specific door when a specific collection of doors have been triggered already.
Yeah you can do all that.
You'll need target_botspawn entities which will spawn a (specific) bot for you to fight. The target_botspawn can point to another entity with its "deathtarget" key, which means that the targeted entity will be triggered when the bot dies.
You can also use a target_logic entity to have a door open when a specific set of other doors has opened as well. The target_logic entity functions like a target_relay but requires all of the entities that target it to be activated.
InsaneKid wrote:target_entities, that dont need to be activated directly by the player ...
and a
trigger_gameEnd:
there almost is a trigger_once for when the game starts;
the "trigger_gameEnd" should fire, when the game ends!
There are various ways of activating entities without the need for the player to do so. Examples are func_timer or func_delay or the trigger_death or trigger_frag entities. What exactly do you need?
A trigger_once for when the game starts already exists in vanilla Quake 3. It's called trigger_always. It will activate the entities it targets once at the start of the game.
As for trigger_gameEnd, the closest thing we have is target_finish, which actually ends the game. I'm not sure what you want to do when the end of the level has been reached...?
No internet for a few days... anyway, here's a list of things I could use to make a proto of my own game:
An entity that displays a medium or small sized caption on the bottom of the screen for a given period of time, could also display a sprite next to it. Could be used for subtitles, tutorials, and the like.
An entity that changes the BGM. If crossfading is an option, include it.
A way to make the results screen actually play some BGM.
Changing the health of
Displaying the hitpoints of a certain enemy (boss) as a part of the HUD. (best if it's a spawnflag of the bot entity)
CFG savegames, I need them badly for a bigger project to be possible.
A way to define/read/write variables to/from the game state and have an IF/ELSE logical branch entity checking them. (If boss_defeated = 1, spawn a chosen powerup on XYZ spot.) It'd be a nice way to apply changes across all maps as opposed to what target_logic allows.
A way to control how much ammo for XYZ weapon a player has. For example, you could make rocketjump puzzles with a zero-damage (or godmode) BFG/RL with limited ammo per room.
A way to halt the bot AI until fired up again. When started up, it continues like nothing happened (Could be used for time-stopping game mechanics, or to stop those goons from killing you during cutscenes)
An entity for the camera to cut to when fired, the camera will assume its position/angle and scroll to its target's position/angle. (let's say a path_corner means that it keeps going, while target_position ends the sequence and returns the camera to the player) Using some maths to smooth the movement into a spline, if possible. (The result would be a poor man's Unreal Matinee)
A way to force the player character to look at something. Not needed if the above is implemented instead.
A brushmodel entity that can be pushed around, like the barrels and other explosives in Quake 2. Movement could be limited by a shader made especially for that purpose. For some additional functionality, it could fire its targets when it reaches a specific position. (described by "destination" and "range", that is firing when the object is within the "range" of the "destination".
Some way to determine the place we spawn at after a mapchange (to be able to split huge areas into smaller maps) - without duplicating the whole map.
I found a small mistake in the mod's manual - it says that implementing the definitions into Rad 1.5 isn't possible - well, it is. Create an "EntityPlus" directory under /q3.game/ inside where you installed Radiant 1.5, throw the definition file in there, change fs_game in Radiant to E+ like suggested and you're good to go.
A slightly off-topic question, where should I go if I'm looking for people to help me with the mod? E+ pretty much gave me that "kick" to start something on my own :V
Already took two of your ideas and implemented them.
I added a SUBTITLE key to target_print, which allows you to print a text message to the bottom of the screen in a smaller font.
Another thing I did was add a new target_variable entity. This entity can write a variable with a value to memory (which persists across map changes if the map change was done by a target_mapchange entity). It can also read a variable to memory and compare it to a specified value. Based on which spawnflags are set, it will activate its targets if the two values match or when they don't match. It also has an "immediately" spawnflag. This means that if you perform some actions (say push a button or defeat an enemy) in map A and that action activates a target_variable which writes a variable, then you can move on to map B and have a target_variable entity open a door in that map based on the value of the variable. If the button in map A wasn't pushed yet, the door in map B will remain closed.
I'm going to experiment with if I can use this to activate/deactivate spawnpoints as well, which means that you can have a player spawn at spawnpoint 1 in map A, then move to map B and move back to map A again, but have him spawn at spawnpoint 2 then, so you can move back and forth between maps.
It's not exactly saving the entire state of the map, but I guess it's a good way of mimicking it for now.
Last edited by Eraser on Thu Sep 01, 2011 11:07 am, edited 1 time in total.
Also, a bug in my post.. I meant to say "a way to change the health of a spawned enemy" but stopped mid-sentence to check whether this wasn't actually implemented already, and apparently forgot about this.
Oh. Well, I realize it doesn't matter much for me anyway since even if I proto my game in E+, I'm gonna do just the first two levels. (then either gonna continue it in another engine, or write a separate branch based off this)
Oh, if only MD3 exporting wasn't such a pain in the arse.
When the player dies, I want it to feel like you really died in a single player game. Music plays, screen fades to black, and you click "Continue"
To make this easy on you, all you need to do is fade the screen to black(over duration of 3 seconds) and display a message on the screen "Game Over.\n\nPress any key to continue.", and play the music.
Yes, I need the ability to play "game over" music. Is it possible for you to do something similar to the "scoreboard", where we can define a music .wav for "game over" event?
oh, this would mean i would need a "map_restart" effect (without the 5 second countdown.) to go after the "Press any key to continue." -- because, if the player(you) dies, it's pretty much impossible for them to continue if the map doesn't restart, because some one-way/one-time-only elevators have already gone, and other stuff has already played through, etc. --- the idea is that the player must survive the whole run.
I've implemented a very simple cutscene camera system. You can link cameras together to jump from view to view. Next step is to make smooth pans between two camera positions but I need to figure out if I'm smart enough for the maths behind that...
that will be awesome to have in my map! =3
Eraser, can you change the Func_timer so it wont keep firing its target forever... maybe you could have a LOOP spawnflag that makes it fire forever every X seconds. (X being the value set in the wait key.) and a rounds key that can be set which will tell the entity how many times to fire its targeted entity every X seconds.