So
I just made a clock in my map using this method. I noticed that the further away from 0 0 0 your func walls are the bigger the arc they travel in.
Also, there are other movetypes that also work, some that rotate as the object falls to the ground. Could be interesting to play with on a low gravity map.
Some more ideas for this, moon / sun / planets orbiting your map. A scale model of the solar system. Gears, or clockwork in maps. A fully sick car with spinning wheels. A spinning leek... I'm sure there are more.
Back To The Future!?
#340 posted by - on 2015/10/21 17:18:13
Here's a "hack"... in the id maps!
I was zooming around e1m4 when I noticed a funny looking block with an Ogre walking into it... Using sock's mod with path's visualized to show what is up:
http://scampie.net/etc/ogrepath_wait.jpg
Turns out, that block is a func_door on top of the first path_corner in a sequence the Ogre is trying to walk to... so it can never reach it and ends up sitting there forever!...
Until a trigger lowers the block out of the way. The Ogre can continue to walk out the door and eventually gets placed into a path_corner loop on the dock over the water. The end result is like a scripted sequence of triggering the ogre to walk out of the door on demand!
---
It's odd because it's very unlikely a player will ever notice this happen, the ogre walks so slow and the trigger that lowers the block is right at the edge of the water... In all honesty, if this were me, I would've just teleported that Ogre onto the dock when the player was out of view. But what id did here was make a basic scripted sequence with their primitive tools that only a few % of people might notice... But you might just hear the door open, and see the ogre lazily walk out and it makes the world so much more alive. It's wonderful :D
That's Pretty Cool
#341 posted by Kinn on 2015/10/21 20:56:24
and the way monster teleporting works in vanilla is only slightly less of a goofy "hack" really.
#342 posted by Lunaran on 2015/10/21 22:04:17
yeah, and mods as early as zerstorer 'unhacked' it and added progs functionality to just trigger a monster to make it appear.
id may have just never bothered developing anything better than teleport boxes because that's what they had in Doom. You built a long tiny tunnel to propagate sound into a room full of monsters to get them angry, then tagged a door in the room to open and reveal a teleport linedef and then just hope all the monsters eventually crossed it as they wandered angrily around said room. id probably thought having the 3rd dimension on their side to make monsters fall directly into the teleport brush was high technology.
High Framerate Animated Textures
#343 posted by Preach on 2016/02/11 00:54:51
Has it really been more than 3 months since the last hack? Well, good things come to those who wait.
https://tomeofpreach.wordpress.com/2016/02/10/high-fps-texture-animations/
Today's hack offers a trick to upgrade the 5 fps animated textures into 10 fps animated textures instead. This should benefit maps with waterfalls and lava flows a great deal...
Notnull Hack?
Im not sure I know this one, can someone explain it or point to a resource that explains it?
A Primer On Info_notnull
#345 posted by Preach on 2016/02/11 01:09:11
My intro to map hacks post uses info_notnull and mentions why we like it so much
https://tomeofpreach.wordpress.com/2012/11/18/triggered-explosions/
Awesome Preach!
#346 posted by mjb on 2016/02/11 18:20:07
Thanks for posting this Preach! It will be interesting to look into at some point. Your waterfalls are already at a pretty high fps so I take it this wouldn't' do much/anything for them correct?
Whoa!!
#347 posted by Qmaster on 2016/02/11 19:00:35
abutton1, bbutton1, cbutton1....mind blown!
Whoa! func_wall.use changes texture...mind blown again!
Double wammy there Preach.
Don't Go Chasing Waterfalls
#348 posted by Preach on 2016/02/11 19:42:10
Thanks for posting this Preach! It will be interesting to look into at some point. Your waterfalls are already at a pretty high fps so I take it this wouldn't' do much/anything for them correct?
This trick is really for animations on BSP object, things made out of brushes. My waterfalls are in .mdl format so they aren't applicable to this trick. However, I think this will be great for making waterfalls in places where my model can't be used, e.g. in vanilla maps or spots where the waterfall has to be made to fit.
I'll Stick To The Mdls I'm Used To.
#349 posted by mjb on 2016/02/11 20:07:34
Ah okay I was figuring that was the case. Always excited to get a new map hack from you. I already have numerous ones from the past implemented in my current project!
That's Deviously Clever
#350 posted by ijed on 2016/02/11 20:30:02
Nice one!
Could Make It Even Higher Framerate
#351 posted by Skiffy on 2016/02/12 03:26:18
In theory you could go higher framerate and double it again for the framerate hack. just need to add another 2 layers of meshes switching at .25 and .75 seconds delay. I think I will have to give this a go at one point as well :)
Monster Only Teleports
#352 posted by Qmaster on 2016/02/12 18:52:24
Neat trick I found. If you place a trigger push with a velocity of 100 right in front of a teleport the player won't be able to use it (if its angles are right, you could always suck the player in for a neat trap!). If you then place a trigger_monsterjump a hair bit in front of it and give it the same forward velocity of 100 but an up velocity of only 1, it will negate the push and let the monster teleport. You could reinforce the concept by putting a func_illusionary in front of it with a unique teleport texture. If you want to make the teleport useable later such as after a fight, you can killtarget the trigger_push and the func_illusionary.
Teleporters
Sort of a neat trick as opposed to TE_TELEPORT effect at either side of the ent being teleported is if your engine has a .alpha field you could "fade" him out while non solid, hijack his think to be the fade function until hes perfectly transparent, then transport him, and fade him in using the same function in reverse. If done with the right timing it could look pretty good, and you could throw in a EF_BRIGHTFIELD at the end for maybe the last few frames while transporting, and the first few while "rematerializing"....
If the engine has EF_ADDITIVE for blending, I think it looks even better.
Invisible Teleport Randomizer
#354 posted by Qmaster on 2016/02/13 05:02:50
info_notnull
targetname movingteleportdest1
target path1wp1
speed 200
avelocity "100 200 300"
solid | 0
movetype | 7
use train_use
nextthink 0.2
think func_train_find
Borrows code from the misc_teleporttrain to create a moving teleport destination that is invisible. Use in combination with a monster teleport box whose targetname is movingteleportdest1. Give a nice path above an area to drop in monster in a randomized locations. Put multiple monsters in the same long teleport box with only one teleport and you can cut down on trigger_teleport requirements, and add randomization.
Oh And...
#355 posted by Qmaster on 2016/02/13 05:05:46
make sure something targets it or else it won't move.
As an extension of this idea, you could have a teleport that changes destination by having it target this entity and giving the 2nd path_corner a wait of -1.
#356 posted by necros on 2016/02/13 15:24:59
You can teleport to monsters, even dead ones. :)
And Items
#357 posted by Qmaster on 2016/02/13 18:38:38
Fiends Hatching From Grunts
#358 posted by ijed on 2016/02/16 13:50:15
So you give a grunt 'effects 8' and when he dies, he trigger spawns a fiend into his own location.
#359 posted by Skiffy on 2016/02/16 14:18:06
Too bad you cant gib corpses this way... have a grunt spawn a zombie or fiend in a spray of gore!
You Could
#360 posted by ijed on 2016/02/16 16:20:46
Spawn a zombie, then after 0.05 seconds spawn a fiend at the zombie's position.
Best way would just be to use qc though so as not to inflate the monster count.
#361 posted by necros on 2016/02/16 17:02:50
Would be unwise to spawn large monster from small monster due to bbox Size difference.
Hm
#362 posted by ijed on 2016/02/16 20:05:24
Yeah, qc would be good again to check for !walkmove.
Public Polling
#363 posted by Preach on 2016/02/17 00:41:25
So, which hack should I write up next:
a) A trigger which randomly selects between triggering "event_a" and "event_b"
or
b) A trigger_counter which can be reset and used over and over again.
I mean, eventually I'll get round to both, but which one should I do first?
|