#SLAMFIRE: 3D Movement FPS / Immersive Sim
1 messages · Page 3 of 1
hehe ye
Very fancy indeed
Hmmmm
Getting stealth game inspiration
Imagine guards searching for someone matching your description, except you've already swapped brains and are hiding amongst the guards pretending to look for yourself
You could be a little alien intruder
hahaha, the thing but it's you controlling it
made a confirm on quit menu, also optional, and detects where you're quitting from
not a ton, but the rocket explosions are
i've been meaning to make better ones eventually with proper sprites and whatnot
for now it's kinda limited experiments
So you know how to make them though?
I'm struggling
suffering more like it
#1191567732920045598 message
This is like the best I can do
meh, it just takes some time and experimenting
That took an hour 😭
the rocket explosion is like, 5 different ones
3 emitters and 2 sub emitters
Wait you can have multiple emitters?
Is that just like multiple nodes?
And how would you start them all at the same time?
the explosion in previous footage was
- GPU particle node shockwave
- GPU particle node fizz
- GPU particle node fizz emitter (shoots out partiicles that have the fizz emitter above as a sub emitter)
- flame plume
- flame plume emitter
etc
I am very bad with particle hierarchy and management
I have basically no idea the intended way to use them
Setting emitting to true to start a one-shot particle system feels weird
And resetting it erases the particles so you sort of can't play the same effect two times at once
yeah, sometimes i also spawn in particle scenes to do that too
you'll figure out a systme
mine is still super rough
You know what
The draw() method isn't too shabby...
Maybe I should make a QuickEffect2D
Or a OnceEffect2D
Hey sinewave
Have you done saving and loading yet?
hi
yeah
i don't intend on doing saving/loading mid game like traditional shooters
but i do have code for examples of that if you want to see it
I just did it!
And it uses human-readable resources!
And it uses SafeResourceLoader too!
The awesome thing is that this is all automatic
I just do GameManager.load_save(0) to trigger ALL of that
yep
i have a Client autoload that handles among other things, loading and saving the cfg file
Usually that won't trigger a save, but if it makes a new file, it saves it with GameManager.save_progress()
I actually avoid autoloads
I prefer static variables
It's pretty fun you should try it out
So GameManager is actually the name of a class
and load_save() is a static function
As is progress_data
i do a mix of both, it depends
Me too
Like Transition is an autoload
but Main is just a regular scene that holds all of the "game world"
var autolaunch: bool = true
var msens := 100.0
var startup_mode: LuxWindowManager.StartupMode = LuxWindowManager.StartupMode.SINGLE_WINDOW
var username: String = "USER"
var confirm_on_quit: bool = true
var console_pauses: bool = false
var _quit_to_console: bool = false
func load() -> String:
var config = ConfigFile.new()
var path := LSDLIB.Utils.get_dir() + "/cfg/settings.cfg"
# Load data from a file.
var err = config.load(path)
# If the file didn't load, ignore it.
if err != OK:
if err == ERR_FILE_NOT_FOUND:
save()
return "Packet not found. Creating a fresh copy."
autolaunch = config.get_value("settings", "autolaunch", false)
msens = config.get_value("keys", "msens", 100)
startup_mode = config.get_value("settings", "startup_mode", LuxWindowManager.StartupMode.SINGLE_WINDOW)
username = config.get_value("settings", "username", "USER")
confirm_on_quit = config.get_value("settings", "confirm_on_quit", true)
console_pauses = config.get_value("settings", "console_pauses", false)
if startup_mode == LuxWindowManager.StartupMode.CONSOLE_FOCUS && confirm_on_quit:
_quit_to_console = true
return "Reading user datapacket..."
func save() -> String:
var config = ConfigFile.new()
config.set_value("settings", "username", username)
config.set_value("settings", "startup_mode", startup_mode)
config.set_value("settings", "autolaunch", autolaunch)
config.set_value("settings", "confirm_on_quit", confirm_on_quit)
config.set_value("settings", "console_pauses", console_pauses)
config.set_value("keys", "msens", msens)
var path := LSDLIB.Utils.get_dir() + "/cfg/settings.cfg"
config.save(path)
return "Saved to: " + path```
MainMenu will be a separate scene
Woah autolaunch? Woah startup_mode? WOAH username?!?!?!
yeah, dictates if you have console embedded or in a seperate window
or what the console calls you
Hi all! There aren’t any play test builds available yet right?
not yet, but soon
You can pin messages
so far, the only builds have been for testing movement code
You should totally do that
true
Cool thanks! I will keep following 🙂
I don’t think so
Yet there is a pinned messages icon in all forum posts
The permissions must be disabled
oh wait, teddy, you did Crus modding right
sick
if you want, the discord link in my bio goes to the dev server
Snatch
there should be some test builds very soon though.
one thing i have in mind is making this moddabke because omg cruelty squad sucked at that
Ah cool thanks yeah I have a universal godot 4 VR mod in progress hence my extra interest 🙂
Can you make some of those into announcement channels so that I can connect them to my server?
i think there is one
Awesome
I don’t even need modding tools any more haha
yeah, will di
Veeeeery nice
Still modding tools are appreciated hopefully I or other fans will build on top of the basic VR functionality
There will be limits to what I can do universally
oh yeah, i already have the game map building tools distributable and it loads maps at runtime
but i wanna let people add weapons and enemies
Awesome!
regardless, great to see you again, thanks for stopping by
hopefully you and many others can play something soon
i'm almost done rewriting enemies and actors to be one base scene with different controllers etc
Got the link thank you! Keep on with the great work!
you too friend
i'm a bit late but yeah this was already selected
Followed!
some more UI work today in the off hours of 'urg, i don't wanna work on the rewrite but i want to be productive'
icons for the various menus and things
actually these are stored indivudally, i just use the sprite sheet export preview to take a single screenshot
sometimes i do spritesheet it out though
it just depends on what it's used for
some things like different menu icons are a bit... not worth using on a single sheet imo
I don't use spritesheets for my static characters but for the UI sheet, which has like every button ever, I do
huh
how's that work? i hate using animated textures for control nodes and shove as2ds in usually
ih
I'll probably be using separate images when I get to HUD and such
i forgot 2d gets to be different
it's not 100% functional yet but we got the actor possession system working
and i slapped player movement on another actor and it followed me around so we walked up stairs together etc
👍
making it fully complete shortly here
but it's almost in! :D
That’s very interesting I wonder if that means in theory you could have a follower mechanic if you wanted someday
you know that exact thought crossed into my head when this bug happened
instead of jumping over, i just controlled it as well as myself still
and i thought hmm.. you could do something with that, a friendly AI kinda thing
the way it jumped with me reminded me of TF2's soldier/medic combo with a quick fix - when the soldier rocket jumps, the medic is launched with them
just in time to meet my folks for dinner
doodling some more practice art today to try and get better, and also find a more firm color palette
i'm not so good at certain facial details, so practice practice practice it is
The strafe hud lives again :D
the idea is there's one other element to follow: the optimal angle display
though it's not quite accurate atm
when will you get to working on combat and gunplay?
pretty soon; a lot of what i did in the. past was learning how to do things and where they started to go wrong
gunplay has been explored a bit but nothing incredibly final. definitely some plans for larger structure of the game tc
before i really start digging into that, i want to make sure i have the basic stuff set up in a way that isn't going to be an extreme hassle down the line
..been the case so far lol
🙃
Luckily refactoring is "fun"
As in you have to do it eventually and you'll be happy when you do
My Actors are a mess
I'm yet to touch state machines
But I will soon, pinky promise
I have this one puzzle object that I need to implement that will require some new features and a refactor
I will have to implement state machines and turn management
on the topic of gunplay,
this thing came out pretty interesting in first person
needs more detail, but the proportions are juuust right
This is a cool game :)
to answer your question: right now
in the past i went with custom resources for weapons but ultimately scenes are kinda custom resources. so i'm moving some things out of that and into a scene based approach from an inhereted Weapon scene (maybe stupid and should just be a class node)
either way: throwing this back in and getting it to work with the actor look direction system and whatnot
I do a mix of all 3 :D
yeah, my actors work like that
Inherited scenes, classes, and resources
yep lol
side note, remote transform 3D is the one node allowed to break The Rules
love that thing
like, wow
Haven't used remote transforms yet
also, lookdir is a bit of a misnomer as the real actor look direction is the raycast - and that's what gets used - buuuut for simplicity rn i use it as the base rotation from input before any view effects like bobbing and whatnot, to saparate them more cleanly and abuse inhereted transforms instead of math in code
it's a bit of a limited use case hackaround but i use them for two things:
-
something like the above where i need to override some already custom positional behavior for specifically one thing
-
The game cameras :D
what you see is a Lie
also, whoa: putting in the ik arms and whatnot
i tweaked the old skin shader and..
i realllllly like this!
Me too!
gurren lagann vibes
never seen it but i have heard of it :o
i will now crank up the view bobbing, to ensure my players are air strafing as much as possible
(this is a joke)
Yay
Nausea
Makes the game 200% more realistic
Because who doesn't get dizzy while walking in real life?
😎
I better find a way to put that in my 2D game
yeah this is kinda why i like having a decent 3d weapon bob, but the head bob is exclusively up and down
Smart
that'll be an option but i'm experimenting since the values are of course linked and i was able to rewrite it from the start much more cleany to use 3 different sines instead of one
I never pass up a pun
I'm punstoppable
Anyway you got the source code for that cloning device?
Ok I'll stop now
ooh this looks similar to another game I know 👀
all seriousness that looks fire
please make that an togglable option
idk why but i really like it
:O
You have any shareable components?
gorgeous
I'm going to make a state machine addon
oooh
I need it for Command Quest
But it seems so useful in every project so...
It will be pretty simple but very easy to use and versatile
what exactly are the benefits of using a state machine rather than just having a variable containing the state value?
ohhh ok
And also cleaner code
And also running code when a new state is entered or left
Like an _enter_state() function
Also makes synced animation waaaay easier
ohhh ok
that is a state machine
I thought a state machine was only a node with child nodes that run their own separate logic for different states
Godot-style node-based state-separated finite state machine
Actually I will start that today
It shall be called "StateBot"
I see you changed the approach from prerendered drawn frames to ingame rendering
Oh when did that happen?
I feel like I just saw you sharing some new prerendered frames like last week
about a month ago
i've always had them as 3d models
it wasn't much to swap over like that for the weapons
and i originally a long time ago had some basic 3d models i made for when the game was 3d originally
but the dip into sprites and voxel art taught me so much and i like where it's ended up in a halfway
i'm going to be pushing that further with props i think
I like the style of the thumbnail so much that I'm definitely using it in-game
Mixing styles is cool
most props are just things like furniture and what not are really just textures on flats with the complex map geometry. a select few will have specific extra models that are voxels and these are important game objects like the hackable computers or health pickups or ammo right
and then finally A lot of detail props will simply just be sprites
sorta, when you think about it that way
i never considered it but that's totally how it ends up in build engine
due to limitations the 3d stuff was reserved for important things
buttons, pickups, itons
there are some minor 3d props that are interactible like food voxel models etc as well. but it's interactible to some degree. even some physics props
Limitations = new creative solutions
i'm not sure how intentional it was as much as 'we want to make as many 3d objects as we can, so let's make te things the player directly manipulates in the world that"
i guess it is?
i don't know lol
It's subconscious
"We can't do it to everything, so let's make the important stuff 3D"
Mostly just because it's cool
But then it ends up having a bonus effect
I guess when you think about it, they probably were like "We want the player to see this" (not for game design, just because it's cool)
Remote transform’s path would be to the node marked Weapon right? Funny I was experimenting with VR weapons and my approach was to take the original weapon node, find it, set as top level and set to remote transform on my controller so may need a different approach for Slamfire ha
the weapon node is not the actual weapon node
it's a dummy manager basically (and i should rename it)
but yeah, remote transform pushes its own transform to something else
so the game camera is a node atached to the player view pos node and the remote path is the camera3D in a viewport elsewhere
Oh that’s interesting
a little late night treat, got a biiit tired of working on guns so i re-worked the sky shader code because it was bothing me bigtime
i have Successfully Eliminated the 'jump' when the texture wrapped around
the sky texture itself was made with substance designer
the fiiiirst thing i've made with it so far
then push it to the back and dang, that's pretty nice
what is that, hair strand, red jam?
yeah, wanted to experiment with some visuals taking a bwuick break last night from the weapon code
is hair
hair
I would never self insert
not at all
Yet you did not not
i do have some voice actors but I'll definitely be voicing an enemy lol
Haha awesome
I'm doing all of the voices for Command Quest
thanks for reminding me
I'll be doing them Hollow Knight style
yo thats whats happening with our game too
im Security Bots
Are you also doing it Hollow Knight style?
Little adorable grunts and murmurs
ngyah
woolooloolooloo
mrmrmrmrm
gaaaaaaah...!
Or Zelda BoTW lady style
💖 Oh hoho 💖
i know you are asking nether but i will be screaming awful things 😂
this is something i havent had to think of before
the thing is
in this game, itll have voice acting rather than just lil grunts and things
but itll also be funny if it does
i think i may do a mix
security bot spots you
"hey, you're not supposed to be here"
yeah, i'm going to have the trope-y borderline annoying voiced protag dropping the dumb one liners
lmao
the protag for us is going to be like
"Aw man. I guess I'm dead now."
naive at first and the side protag would just be bashing on them
but slowly they become more comfortable and friends
so now if the side protag throws a insult (jokingly ofc), the main protag throws one back
💀
I'd love to see the change over time
main protag: dies
side protag: dumbass
"Ugh, now I have to respawn you again."
actually no, that wouldn't make sense since theyre both kind of the same entity
💀💀
Whaaaat
Lore

“Time to kick bubblegum and chew ass, and I’m all outta ass”
Duke Nukem vibes I’m getting already
hahahahaaaa precisely
on that note i do consider ion fury to be a huge inspirationz though i am glad to be moving away from being such a direct copy, visually
okay off and on today i've been just fiddling over and over and over and over but slowly i think we're getting somewhere y'know
i was staring at a reference pic for proportions but once i had the head shape i just got lost in doing my own version
still some work left to do, but i'm getting closer to some more consistent thoughts and whatnot
oh hwoops i totally left a layer hidden, lol, no wonder the hair looked a bit odd
pew pew
:water_gun: or whatever
Is this the main character?
working on that, yeah.
i wanted to do two, loosely following the story and some themes from afes PKD novels that are a favorite of mine, and i figured I'd start with that
unfortunately for me drawing faces on people has always been pretty difficult, I've always been much better at texturing in abstract shapes and other things
But with time I think I'll have at least some ideas and concept art that I can show people and get more refined work done if I need to
You did great though!
Looks good to me for sure!
thank you very much
textures are the fun part of it for me, i love painting textures of any kind. something about the process scratches the right itch in my brain
mostly, though some things i am going to use substance designer for
that sheet i posted a while back was hand painted in aseprite
i just opened up a 64x64 image and pained and sometimes I'd duplicate a frame and draw a variant like brick and mossy brick
Nice work!
Sheesh that looks amazing
thank you :>
i'm workin' on these to match
the greens are just right 👌
well wasn't that fun to finish into the component system
which i think i pretty much get now
the view effects are back and properly done, i thought one bug with them was collision so that wasted a ton of time last night
also the movement code got a review
i think hard splitting move air and ground can be odd, because it can kinda change midway through
much like the other part of the process, it's worth reevaluating instead of really 1:1 quake 3 algo
so i was able to write an improved version that eliminated the 'head stuck' bug on walking
the idea goes something like
var n := collision.get_normal(j)
if has_surface_control():
# normal ground
if n.y >= 0.7:
#if move_vel.dot(n) < 0.0 && !_move_step(move_vel, collision, delta):
move_vel = _clip_velocity(move_vel, n, 1.001)
# steppable ground (?)
elif n.y >= 0.0:
if move_vel.dot(n) < 0.0 && !_move_step(move_vel, collision, delta):
move_vel = _clip_velocity(move_vel, n, 1.001)
# This is a weird one.
# Smacked the head inside a pyramid or some shit
# Bump it back so we don't get stuck (that would be very not cash money)
elif n.y < 0.0:
if move_vel.dot(n) < 0.0 && !_move_step(move_vel, collision, delta):
var adjusted_normal := LSDLIB.Math.vec_xz(n).normalized()
move_vel = _clip_velocity(move_vel, adjusted_normal, 1.5)
else:
# in the air, or on a slick surface:
if n.y >= 0.7:
# hold up wait a minute This Is Not an Air Move (But Maybe)
_check_ground()
else:
# hit a wall midair
move_vel = _clip_velocity(move_vel, n, 1.001)```
that gets iterated a bit more too
-> check ground automatically updates the flags for movement etc
ultimately this is the fusion of a few different movement algorithms, i'll go over each one before releasing and assign some credit where it's due for different parts of it
it's not quite there yet but it behaves a hell of a lot nicer now
i think really it'd be wise to track collisions and do the whole seam thing for them but we'll see
(that is doing a cross product for a new sliding normal)
i promise i am still hard at work here
yesterday was a biiit of a low energy kinda day but today is a new one
so we're doing some experimentation, and so far, the octagon player box feels a loooot better and more consistent than the cylinder
it's axially locked
Interesting. What changes?
some normal collisions are a lot better now and sliding against walls going up ramps/stairs works much better
it seems to be a bit more stable than a cylinder, anyway. not quite box level or capsule level but we'll see
testing it more to see exactly what else might be odd, but it's improved a lot already
Interesting
howdy, so things are moving along in the background
I've managed to reimplement the view effects node and physics interpolation when swapping actors. It was a biiiit confusing but it's et up for re-adding weapons into the system
noice
and also crouching is in and fixed properly
fancy
sorry im just catching up on some msgs i missed
love that anime main character glint on the glasses
[
crouching and view effects juuust about right, and damn the crouch jump feels good over boxes
and i really like how the cam pos when crouching in the air barely moves
watch your step...
made a new texture today in some off time while workin on weapons
added in alt firemodes as well, gave the rocket laucher a basic 'shoot all the barrels at once!'
lovely
add rocket jumping
how fast can you go
yes
wonderufl
it's my own spin on quake 3 movement
when is demo
when it's ready
lol
Ohhh that's good! What if you added some kickback per rocket fired?
Or only kickback when launching all 4 rockets at once, as to not disway rocket jumping
there's definitely going to be some recoil, really it was just a test for setting up alt attacks for now. but i do think having a spray curve for weapons would also be nice
like a fixed path to randomize off of, ala counter strike
i do love it too, it's satisfying to master
howdy
setting up game entities as i move towards making a complete level mockup/demo
THE COMPANION CUBE CAN NOT SPEAK
u should use a different mono font for the screen
but this looks amazing
and making it red like the screen model would look nice and make sense i think
yeah, all needs some visual polish eventually
trying to just get some of the mechanics working properly before i spend too much time on that
yeah good luck
better...
Demo level blockout + putting in the doors, movers, whatnot today
then, hopefully, all that's left is playing around with AI and art, and i can have an actual gameplay demo going
it's gonna be a looot less flat don't worry, just roughly sketching out ideas and getting a path down
also, the revolver got the first of the weapon alt attacks!
it locks on to targets and will aim / double tap 'em
The tilt just looks at the player velocity dot camera global basis X
and adds roll based on that
This game looks hecking cool!
Thank you :D
the keycards are working to unlock things, here's a basic useable press E trigger (and also, one marked as 'secret' so it doesn't display the keybind popup)
it's locked behind needing that purple card
you know the mechanic
fancy!
that gun model also reminds me of the gauss gun/tau cannon from half life
imagine the trepang potential
THAT'S AMAZING
wait until ya see the demo level blockout
this level has expandeda toooon today. i'm putting in doors, other triggers, movers, all sorts of things
i've got something cooking and i am editing a video now. it features live action video (me), the gameplay (with combat) and so so so so so much more.
see you all soon! I'll be out of town for 2 weeks starting tomorrow.
this time it's not all play! i am visiting my mapper!
You get one sneak preview
there's self inserting, and then there's self inserting
video stream player is an interesting class
whacha mean
I was thinking they meant making it a live cam lol
hey everyone, back again
moving platforms have been added to the move and slide algorithm, and i've been working hand in hand in person with my mapper and best friend.
I'll be dropping a gameplay trailer Saturday, both campaign and trick mode. I think personally the rocket jumping he's doing now is gonna blow y'all away
The first SLAMFIRE gameplay demo double feature will be a part of HEXEN420 v4.0 tonight!
It's a multihour long collaborative show of music and art.
https://www.twitch.tv/hexenshow
It will begin in: <t:1713657600:R>
I'll be posting here as well.
and here it is >>>
from here i'll be working on adding more levels, more enemies, more guns, and more everything.
i'll also likely be re-writing in C#/++, as i now have a good idea of everything involved (this was always planned, once i had the full mechanical idea of things, the content was complete, etc, to write fresh knowing what we need up front)
:)
enjoy
i feel like having that clothing breaks the game style immersion
what if you wear a vikings uniform
but game looks amazing and im excited
meowdy
we're MAPPING and making GAME CONTENT today
here is a SNEAK at kairos' first real slamfire trick
lovely
wow, that movement looks really fun! great job!
thank you :D
i'm making some maps today for trick maps, while we work on setting up the systems on paper now that needs are pretty much fully known
I was tweaking the way the stairs work also and decided to allow step-up mid air
it's actually super super fun and opened up a totally new workd
this trick features a few forced step-up double jumps
heya, we're moving along making all sorts of trick jumping maps to give a sample of the many different techniques and fun things people have discovered over the years
also, here's some footage from writing and recording some more songs for the OST
dooming
lovely
Good morning. I don't sleep, I just write funny things to show you before the game starts up into the main menu.
ahahah, true, the funny messages are good when leaving also
been workin' on some other types of movement maps and getting better at making htem myself
howdy it's that daily ish update time
we've been working on the weapons and what they'll all do. some very creative fun ideas; one thing i can't wait to make is the rail gun- i think you guys are really gonna love the idea.
here's a hint: picture in picture scope and reflecting projectiles...
anyway, the actor and weapon system got a massive cleaning. i made a total fucking mess with the first approach at components won't lie
it helped a lot to plan out the entire arsenal at first
also, I've been working on some test maps of all flavors and styles for story and tricks, and had some people test it today, too.
In the long run, I'm looking at switching to compiled map support and ultimately a wrapper editor script or something to let people bake light maps without having to know how to use Godot
Headless is a hell of a drug
major code slashing in progress
sooo much easier to work with already
tl;dr:
## Dictates who actually is in control.
class_name ActorDirectives extends Node
var actor: Actor
var cmd: ActorCmd
func set_actor(_actor: Actor) -> void:
actor = _actor
return
func _physics_process(delta: float) -> void:
if !actor:
return
if actor.host && actor.host.cmd:
cmd = actor.host.cmd
else:
# the AI takes over
pass
return
## The player interface to SLAMFIRE.
## An actor with this child will recieve input and control through its [ActorDirectives]
@tool
class_name Host extends Node
some weapon icons, an inventory and some tween exploration
i take back what i said, tweens are nice as fuck
making the menu UI with all the lessons learned previously
make your buttons just call functions, yo
Chaffgames has made a really good tutorial about how to make a gun system using resources
I know you're working on a FPS game, so that will probably suit well
Yeah, that the one i was talking about
chefs content really helped me learn including that very same weapon system resource video
I don't use that system anymore, but now I will be using something similar
That said he taught me how to use custom resources which is when I really learned how to use Gadot
It will be releasing on steam, potentially elsewhere too
That's actually awesome
Why would I use anything else after seeing that lol
the old one had methods scattered all over and was unclean as hell
but i think it's nice to build it like this because then theres your console commands all the same
basic idea
class_name CommandButton extends Button
@export var command: StringName:
set(v):
command = v
update_configuration_warnings()
func _pressed() -> void:
if _get_configuration_warnings():
return
Command.callv(command, args)
return
you can override _get_configuration_warnings to check yourself, and so i check for the method in the Command class and if not you also get a nice visual warning as a bonus!
Haha exactly
Just because I figured it's an inbuilt way to do the validation aand also block
Like I was doing var _valid: bool
but this is a much more correct way i believe
system works pretty nice so far
@wintry frost (sorry for the ping, won't do it again if ya don't like it) here's another sleeper menu option, weapon transparency / hiding the viewmodel
I used this exact system for my guns too
I should make a showcase dev channel soon
For my own project
I jury rigged it into a scroll wheel looping weapon select thing
your menu inspired me in my own thread
decided to do mine similar to yours
because the popup is a bad idea
i have 9 presets
for people that dont want to fuck around with sliders
that's true
the funny thing about this one is that i don't know how to limit the amount of swatches
otherwise the menu gets infinitely large with swatches
so here's a fun thing about how i set up the command interface
the console can call them of course, the menu internally calls the commands... but also, the CFG file is now like a Quake/Source style autoexec
it supports as many .exec files as you want to throw in there, they're just text files
and for safety they do get passed through some validation
more or less, the autoexec just ... autoexecutes console commands ... so the syntax is even the same
some early 3d concepts
- Displacer: plasma caster
- Trisector: highly pressurized stake launcher
alt fires: you'll have to wait and find out
the throngler
thanks! it was a little inspired by this scene
..much less graphic image, sorry
...and also:
man, I loved stargate growing up
That's where those two came from anyway
It's an interesting movie
it will
That's crazy I was brainstorming weapons and I literally thought of the stargate staff weapon
A few weeks ago
Good idea
Classic
Testing out procedural recoil this time around. I've set up an entire viewmodel system, as the plan for now is that enemies and the player alike all use the same "weapon definition" files, but enemy AI bypasses a lot with its own model / sprite and animations and spawns the definition's projectiles or does the thing, whereas a viewmodel scene and controller is ready to be popped on if the actor is controlled by the player
it was a lot to think about but i finally am pretty happy iwth the weapon system setup. it's flexible enough to do lots of different kinds of weapons i think, left up to the script itself if it needs special behavior behond standard things
nice
you've got so many cool visual things going rn
my projectiles are still either white untextured or effectsless hitscan
and as far as procedural recoil, personally i've never liked too much randomness when it comes to recoil, but that's a taste thing
different strokes
you're doing it similar to how i do it\
ah, eventually i'll make it use noise
for now it's a random vector
some other weapons might use curves for predefined base recoil patterns
particle system that shits out a few and an attractor sphere to keep 'em nearby, when it hits, the attractor repels them and frees itelf. they spawn with some tangential velocity, and by default the particles have a little bit of emission
tinker around with 'em sometime it's a lot of fun
oh that's nice
there's no particle collision going on, juts faked with the attractors
right i'm working on something different, which involves swords being fired as part of the floating magic swords weapon - and the projectiles not only embed inside stuff, but have collision, so you could even platform with them if ytou wanted to
actually sorry, i shouldn't post my stuff in here LOL
just found this, love everyones work
still in progress, this one's just too good
this one is a secret for later, maybe a launch trailer, on what it actually does, because oh buddy
this gun is cool and was worth the pain
Here's a hint.
But it's not what you're thinking :D
That is genius!
It's not the scope?
doing some noise-based recoil stuf ftoday
its jank as shit but slowly im figuring out how to do it
i sample a perlin noise resource
i didn't move the mouse at all when firing
redoing the revolver also, giving it some more chunk
you know
if i make a revolver for my own game the idea i was thinking of was using the chiappa rhino as a base, personally
one of the interesting things about that one is that the barrel is not actually on the top
this thing
yeah, fun one
it's on the bottom
i also like the unica though both kinda suck irl lol
true
but it looks cool
thats why so many scifi games use it
or movies
people dont like the grip though
lol
i was actually thinking of something that does an around-corners thing but not like this at all
an idea i percolated in my head was
a slow moving ball
that if you used alt fire to fire it at X time
it fired sideways from the orb
or something like that
the other idea was a mutation of the Shock Combo from UT
where instead of making the sphere explode
if you shoot a sphere with a laser, the laser refracts and seeks out the nearest enemy and hits them if it can see them
kind of like the coin in ultrakill
but not really
some peolpe really love it
regardless your gun looks very fun
simple, but very effective/good feedback
well, deceptively simple
one thing that gave me brain worms was this shader
Clipping a model with a plane and adding displacement to the edge using noise.
In the next tutorial we will look at three ways to cover the geometry gap.
If you just want to copy and paste you can get the source file on Patreon
https://www.patreon.com/Pixezy
HASHTAGS:
#godot4 #shaders #cutout #cutoff
if there was a way to make a gun that added a cut off shader to stuff you hit it with
not a bad idea...
it would go really well with one of the melee weapons, or one of the heavy weapons
it's already a lot better than the old system, it was really stupid easy to update the ammo counter or whatever else
making guns up front is a bit more complex, because the viewmodel is now its own sub-controller 😭
i think a secret sauce ingredient is the camera shake on recoil, you have to do it right
woahh that looks cool
yeah wait i didnt see the sight thats sick as fuck
the reflectoscope
enemy goons HATE HER!
how a girl took down the entire syndicate with a gun that Just Hits Them™️
basically
step up + ramp jump + skim time = God damn
Here is what's going on here
The player hits the wall, slides up and checks for a step, if the velocity was too short it uses default move speed (this is to let you walk up stairs from a standstill while already colliding), finds it, then goes onto a ramp, where the jump can actually happen still - but it's on a ramp, so the Y velocity gets added on top of the jump velocity from sliding up already
end result:
massive jumpski
boing
this is dangerously close to a skim actually, now that I think about it, it's not a true skim as q3 would function but the end result is a really similar efect
This is what a skim does (from above)
not to scale, happens in special time windows (jumping and knockback)
continuing on with weapons
out of curiosity, if you had to make a continuous laser beam gun, how would you do it
like an area3d that terminates where a raycast ends?
and i guess every half second it procs?
I'd start by defining a damage and a rate that it procs
then I'd have to ask the question does it pierce enemies, or does it stop at the first enemy, etc, does it hava a radius, or not
I actually plan on implementing a Spartan laser-like weapon in the game
What I plan to do for this is a raycast that goes out for the world only, then in the physics server I create a box shape with the desired weapon quote unquote radius, from the muzzle to this world collision point, and check it's overlap
static func hitscan(to: Vector3, from: Vector3, world_3d: World3D, exclude: Array[RID], layers: int = 0xFFFFFFFF) -> Dictionary:
var params := PhysicsRayQueryParameters3D.new()
params.from = from
params.to = to
params.exclude = exclude
params.collision_mask = layers
return world_3d.direct_space_state.intersect_ray(params)
static func collide_radius(position: Vector3, radius: float, world_3d: World3D, exclude: Array[RID] = [], layers: int = 0xFFFFFFFF) -> Array[Dictionary]:
var shape_rid := PhysicsServer3D.sphere_shape_create()
PhysicsServer3D.shape_set_data(shape_rid, radius)
var xform := Transform3D()
xform.origin = position
var params := PhysicsShapeQueryParameters3D.new()
params.shape_rid = shape_rid
params.motion = Vector3.ZERO
params.transform = xform
var results := world_3d.direct_space_state.intersect_shape(params)
PhysicsServer3D.free_rid(shape_rid)
return results
static func radius_damage(position: Vector3, radius: float, world_3d: World3D, exclude: Array[RID], layers: int = 0xFFFFFFFF) -> void:
for result in collide_radius(position, radius, world_3d, exclude, layers):
# hitscan to each target from position, then damage
pass
return```
Something like this
The visual mesh would work a bit different, and depending on what you want, you could use a local collision shape and keep track of targets entered and exited to proc when they should for each not globally
okay so i didn't actually expect this to happen but wow, the emissive material on the railgun shot lighting up the world is so cool
i need to fix the normals on the surface though
super cool
Good night! I think this one's about done (and so is my capacity to stay awake)
in my mind
put it in the game, need to tweak the grip size a bit tho
and the right hand pose lol
Oo, nice stairstepping
Wait I rewatched
no there is stairstepping
You were on the ramp lol
it has a lot of very small quirks
By the way I figured out a laser solution for a continuous beam last night
No visual effects but
I go into detail in mine but here's a bit of pseudo code for what I was thinking for the visual laser thingy
@export LineRenderer lineRenderer
func _process(_delta):
if button_is_held_down:
# Show laser
lineRenderer.visible = true
# Make a function to hitscan
var hitscan_result = do_hitscan()
if hitscan_result.hit_something:
# If something is hit, make line end at the hitscan position,
lineRenderer.points[0] = gun_barrel.position
lineRenderer.points[1] = hitscan_result.point
else
# If nothing was hit, make line end at some point in the distance
lineRenderer.points[0] = gun_barrel.position
lineRenderer.points[1] = gun_barrel.position + gun_barrel.forward * 100 # I forget how gdscript handles vector math
else
# Hide laser
lineRenderer.visible = false```
Friend of mine gave me a tip or two, figured I'd return the favor
And send it your way
ramps vs stairs are very different things in slamfire
pay attention to the speed when i jump in particular
you can see my WASD in center
Oh that's really interesting
My game isnt focusing on this but it's cool to see it regardless
it's no something you actively think about in gameplay usually (except for speedrunners) but if you treat stairs as invisible ramps instead with ramp jimping then stairs become really.... Weird and what happens isn't what you see for no reason
I know people like movement tech but the way I play fps kind of informs what I'm making lol
it kinda broke star wars jedi knight 2 speedrunning
Even in games with crazy ass movement tech I never really use it the way, say, source surfers do
i would say wrath did a good job at this
the melee weapon in it gives you a huge speed boost forward if you charge it up, and there are ramps EVERYWHERE to use this same exact concept on
it's noticeable even if you aren't aware of the mechanic, you'll quickly realize
That's really cool, and everything in your game informs the way that it's designed
it happens usually by accident at first for the unaware
I feel like if I introduce too many elements like yours it'll kind of dilute what I'm making, different focus
Kind of like when I first started making my game and I added wall running and sliding and realized how pointless it actually was
i don't even consider this my own mechanics, this is just how ramp jumping worked in quake 2
And how it diluted the focus of what I was making
but, i am focusing on that style of movement, and yours is a bit diff
yeah these small little emergent mechanics from that system are so fun to me
Yours fits your game perfectly
the movement was the first thing i really worked on and prioritized / decided how it would work
and it's practically not changed
how it works has slightly over time with the actual inner workings but the end effect has almost always been this
UT is my formative arena fps and that games focus is on the crazy weapons and everything having an alt fire, I grew up on the one that focused on that instead of quake 3 arena movement tech
i think the one big thing i did was allow stepping up when in the air and moving upwards or downwards, as long as you hit the step up check
that made jumping up stairs feel ok, with a side effect of the hilarious big above
oh yeah, all of the weapons i'm throwing in have alt fires
i used to think adsing was important, funny enough escape from tarkov changed my mind on that entirely
but for this genre it would just be so awkawrd
okay discord is having some issues with message timing lol
My most funny unintentional movement tech is standing on boxes with rocket launchers
Where it flings you way farther than normal
From very early in development
Completely unintentional but very fun
lol
this is a great bug
😂
weapon switching to the revolver -> it shoots a bajillion times -> you go spinning
Lmao
working on more particles
this effect's gonna need to have some more layers and a mesh gradient fake or something
remodeled this quickly, too - it's not done yet but i have some ideas on making it unique rather than "knife version of the fist"
eventually i wanted to add a taunt button, could be a funny place to do hand genstures with this one too
Laser knife
i reallllly hope to settle this one pretty soon, the math for this is just guh
but i think i've made the strafe indicator a aLOT more readable and understandalbe
the arrows tell you what direction your mouse should be moving, the position from center is where you should try to move your mouse to
gorgeous
yea
i'm just not good at them
so I said, put an explosive mine inside a gyroscope that can adjust itself, and she said, wow, what a greande that would be, if it was real
and I said, it is real in my video game
anyway i'm a bit slowed down for a week or so but i'm finishing up the weapon prototypes now and making more enemies
i have learned a lot for blender i feel through all this, so 3d modeling enemies might be a lot more natural than i would have thought a while ago
Crosshair ideas
baked lightmaps + reflection probe 🥹
pseudo LUT / palette swap like effect in areas, love this
the lighting looks really nice! is it baked or realtime?
this is baked lightmapping with reflection probes and then a real-time palette lock
makin that doohickey today
tweaked the lighting a lot last night too
How much better is baked lighting?
yes
Thank you
how would this work for the maps tho, arent they built on the fly or is something else happening
ultimately i would like to offer that and it'd look far worse, but we're looking at other solutions
i was looking at various ways to perhaps automate lightmap baking like people already do with q3map2 etc so they just didnt have to open godot to map for the game still
it can still do runtime building with limited lighting options though
ohhh neat
would there be a HD lighting mode similar to how garry's mod has it for some maps?
i think the option was labeled HDR but im not sure
those can be camera options that largely depend on how the lighting is done. i'm doubtful as it'll probably be a bit extreme with the rest of the vfx but we'll see
side note, this is a fun function for later!
oh whoops forgot to fix if not r
r = [_a, _d]```
duh
ahh ok
holy shit so good
Damn, a lot of things have changed .-.
I love what you are making with the weapon visuals, i hope it is easier to work with now
Recently i've been experimenting with Godot to make it possible to bake lightmaps without directly opening the editor
The trick is making a small project that would have some scripts to make it work and a target scene that would have all the mesh instances (meshes, maybe without materials) and run BakedLightmap.bake() method
After that you'd be able to collect lightmap IDs and assign them on mesh instances in game
yeah, for now i have a scene the engine can open right into
Super fucked, super hacky way, but it works and you can run the Godot Editor in windowless mode
Good to know!
func_godot_map - my beloved entity!
haha yes
Damn that's smooth actually, good job on that
I've been contributing a little here and there, it's an invaluable tool
I can tell!
trying to work on patch support but been so overwhelmed with many things to do
Getting proper map making tools are essential for that kind of project (or any FPS project really)
Exactly
Dramatically so, now that I understand what 2d art goes for and how to hit certain points with the 3d viewport crushing
It's both easier to make complex animations and whatnot and tweak things fast
I still intend on using some 2D sprites though such as the kick
It reminds me of that thing that i had with "Omega Security presentation", i made one huge video and as result it was clunky, slow, high file-size, etc. As result i had to write a system that would replicate the video i made lol
As result it is faster to work with, easier to customize at any given time and etc
that's the fun of learning new ways over time
You case is huge anyway, i mean you made so much weapons and... damn
That's true for sure
I consider this a bit of an art project and a game at the same time, and I found digital expression with different tools in 2d and 3d and blending the line is really fun to explore
That's why i'm pretty sure you'll get this game to release, there is nothing that can stop you
Aw, thank you, those are very kind and encouraging words
I'm glad to see you back, I was a touch worried about your project!
Just started to feel extremely negative about many things and, yeah, to avoid any potential conflicts (that most likely i would start on my own lol), i decided to quit for a while
There is a lot of things that i've been working on and i would not be able to remember it all without looking into to-do list. Maybe one of the things that i'm really proud of is a save system (F5/F9 all that stuff), but that thing still has cases when you can make a soft-locked save
Mainly i think that is a game-changer for me because you don't even need to completely reload a map after death. I can totally make this game hardcore and each death would require the player just ~8-10 seconds to wait. Not whole 1-2 minutes like earlier
oh yeah that's a huge speed up
goddamn
when I switched to precompiled scenes instead of runtime building it was a similar speed boost
Damn this project is looking awesome, love the style, Are you using a viewport for your weapons to lower the resolution independently of the world? again very cool art
i would react with a fire gif (litteraly) as a bigger fire emoji reaction but its stirctly forbidden 😞
Yes, I am using two viewports
small touch I decided to add in properly while rebuilding stuff: the optional high-vis shadow decal, which is really helpful for speedrunning and weapon combo tricks
you can change it to whatever texture and color you like in the options menu
if you're wondering what this might be used for, and also what SLAMFIRE can do besides the normal FPS stuff, here's a video of my mapper playing Defrag - a special mod for Quake 3, and in SLAMFIRE, a 'gamemode' that is side-by-side with the actual game:
Nickname: kairos
Time: 03.44.656
Physics: cpm
Map: kairos-thalasin-airjump
Official defrag discord: https://discord.defrag.racing/
Ladder moving part 1 and some menu redesign
Dio you might like the menu, second vid
also, for those who read this, I leave a gift
https://www.ryanliptak.com/blog/source-vs-goldsrc-movement-slopes/
https://www.ryanliptak.com/blog/rampsliding-quake-engine-quirk/
Downward-slope movement physics differences between the Source (HL2) and GoldSrc (HL1) engines.
More than you wanted to know about rampsliding in the Quake and Half-Life engines
Great technical explanations I have never seen anyone reference. Found a while ago, really good stuff.
Major movement update
I finally did water and ladders lmfao
Really wasn't as much as I thought
Yay ladders
Honestly it is surprising how simple that can be. Like, seriously, making decent movement by walking is harder than these two, which is still surprising me
that high-vis shadow looks really cool! how did you make the shadow render on 2 different heights, are you using 2 decals or some shader magic?
it's just one decal actually
ah, ok does it have a really large bounding box?
yeah, and practically no fade
it's a unique shadow decal, all actors have one, but the player (whatever actor body theye're in) has that if it's enabled in the options too
nice, didn't know you could achieve that effect with a larger bounding box, I've just cast a ray down and placed the decal where the ray hit 😅
oh yeah, that is what i planned on doing as well to make sure they can see it, but then i realized, if it's 100m away, that's practically invisible anyway because it's so small
...so a large AABB is just fine
Shadow decals don't need that really (imo), and especially due to how I structure my actors it's simple to get something with just interpolated position and no rotational movement
yeah, I just tried implementing decal shadows the way you did it and realized how overkill my previous method was...
I'm working on something similar though perhaps a bit closer to the physics of TF2 (basic idea is to replicate the feeling of rocket jumping and make a game out of that). For projectiles (esp. rockets) I am basically using a ShapeCast3D and scanning colliding bodies. I had to add essentially a lockout based on distance traveled from initial position (set to 2 units by default) such that if it has not yet been surpassed, the shooter will not trigger the explosion. Otherwise, the shooter's collider could trigger it randomly even though it was spawned from beyond the collider. Is there a more-elegant way you handled this problem?
oh rocket jumping is a thing in mine for sure
it's pretty much identical as TF2 stats are... very close to CPMA, which is really close to VQ3 anyway
So I kinda fake this actually. It depends. If you want TF2 style RJ with aiming straight down and rockets taking a few frames vs Q3 like instant explosion, thjat's kinda defualt behavior if you just add a collision exception with the spawning actor for ~50ms
I just check if the collision distance for a projecftile weapon is a certain amount and instead just instant detonate rockets there
another thing to look into would be like SV MSSILE PRESTEP TIME stuff which just bumps it out a bit according to 50ms worth of movement or so
the time you need might vary
colliosion exceptions are probably the easiest to manage for X amount of time
I wonder if you are faking it with taking the received damage into account. It would be fun because... Well in my game you can damage yourself with props and at certain weird circumstances you can launch yourself into skies. It is fun so no way i'm going to fix it
actually yes but not what you think
it's important to add a small vertical offset downwards to the explosion source "point" when calculating knock back
I probably will have prop flying like any other boom shoot source like
I see thanks for following up @storm kraken . I’ll probably keep the shooter exception but will test and see if this is best as a time lockout or distance lockout in my case (if it hits the floor first, regardless, it explodes and applies knockback)
In my opinion shooter exception is easier to deal with in Godot but is not true to OG physics, and that may have implications, but also maybe not.
Good luck! I love TF2 rocket jumping a lot (I am literally doing it right now)
an outline shader was suggested and damn
tinkering around with the crosshair some more, making an effect where if you're close enough to a wall or sometthing it'll show your shot is blocked by moving it to wher eit will actually shoot
Ror2 items lmao
A bit it's the smooth colors honestly
What does the circle MEAN
what circle do you MEAN
the middle thing
the cylinder?
no like
the green
i cant
the neon blue in the middle of the screen why is it s pining
the CROSSHAIR
okay that makes sense now 
New rig etc with the rocket lauincher, better animations, upgraded explosion damage radius formula that checks LOS after to confirm in area and blastwave, and also a new mechanic I'm working on here
New mechanic spoilers
yeet, simply
also I recognize that wind shader 👀
lmfao yeah testing an idea there
i like the concept, this iteration is rough
i'll have to make my own probably
heheheh
went there
side note: i am surprised godot doesn't have bar or line charts built in
BUY HIGH
SELL LOW
BUY HIGH
SELL LOW
thats so fancy
love it, is it a 2D ui node tracked or is the panel itself in 3D space?
3D space, yeah
You can even make it react to your cursor dude, try it out once, it is a fun one
I'm saying that because no fucking way that is a bunch of 2D tricks
3D plane with 2D UI on it
okay so actually no this is a HORRORSHOW to push the input in
the panel is indeed 3D. it's on the same visual layer as the weapon so it gets crunched
however that means the collision area and viewed pos are inconsistent. If I can even get the damn mouse entered/exited signals to work I'll add mouse controls
I noticed it looks like you have to control it with keyboard, and, you know what? Keep it that way, true retro gaming
Wait that's how you lose money
That's how you get CEO grindset
thats cool
thats actually what QV does for it's editor, all the tiles are actual 3D tiles that detect the cursor
it's been a minute since i've gotten the chance to take a look at this project, it's really coming along great!
Feels like I'm picking up a liiiitle more steam now that a lot of the systems are planned out more. It's been a lot of fun the last few days again
Gearing up for some real fun stuff
also fixed the bar chart this morning, that was fun
reworked these shaders' source textures
i think it plays relaely neat with the menu bg also
the soda....
lava o-o
Im seeing remnants from a very old version of slamfire here
glad to see the idea was reused :D
it was such a fun idea i had to do it better