#general-modding
1 messages · Page 21 of 1
give him a nice hood
i had a very cool picture somewhere that could be reference but can't find it
casual 4:41 am godot shenanigans
did a quick touch up run on the game
some cool stuff like this
other cool stuff like the weapons reloading when you put them away and the panzerfaust having no rocket inside of it if you run out of ammo
oh and the damage falloff now no longer takes distance into it's approximation
it rolls a random number between 1 to 3 for the petrol explosion linger damage and 1 to 5 for the normal explosions but for a shorter duration
you generally don't want to be near these
Great stuff - love to see your updates
ratchet and clank type sounds
Ayo peeps
Need some help with the indicators on the sides and the bottom
Are they visible enough ?
are those incoming attack indicators?
if so they're almost TOO visible if anything, obviously they're very distinct from the game palette
plus the quick animation makes them stand out even more
I feel like they're too opaque?
yeah maybe if the alpha was related to how close the attack is or something
or if it flickered once then faded
i mean obviously they're doing the job as-is and you wouldn't want to detract from that
but yeah its almost like jarringly distinct atm
crunchy
very happy with how is coming along
now with extra letterboxing
are you doing the viewmodel bobbing with code?
also the hyperrealistic gun in a crunched setting really reminds me of amid evil
you will never run out of games that remind me of your game
yes
that is NOT hyper-realiistic
merry chungus from john adastral it works on windows now
mer crimter
feeling like making his left arm just a robotic arm cannon
which should i go with?
left one
the limbs look off in that one
the legs look weird
reaspm
both legs look weird
maybe try taking a page off the early game dev books where they had a square shaped leg but rotated 45 degrees
also his arms the twice the size of his legs
so i uh
nice
he does remind me of the old fps game main characters like doom or quake
but
hear me out
his right arm is a arm cannon
like samus sorta
but more grey and it looks more like a gun
we now have hands
are the mods fixed yet?
Mods for what?
now to figure out clothes for this guy
UMM is down still due to the update, but so far jaket works
as far as my knowledge
hm
i kinda like that
make them do this
He's not rigged yet
all these voices inside of my head
how
it's not even rigged
what if i made Medal of Honor.EXE
and the gestapo looked directly at me
not at the camera, at ME
This is the best thing I have seen
i felt his pixelated eyes staring directly into my soul
Tha k you fir this christmas gift
Perfect easter egg room
Positively groovin'
So I left my beer in the outside fridge last night visiting my parents for Christmas and it got too cold and exploded.
While cleaning it up my very first thought was:
"This is a ballin' idea for a grenade object in Snowdown"
You grab a can of beer, huck it at an enemy, it plays an animation of the can frosting up and explodes
To cook the grenade your guy shakes it up before throwing
i kinda wish it stood still after the first few rotations, and then it flew after getting hit by the main menu
might do that
redid the arm, i like it a whole more
epic
No I just check periodically
i hate texture painting
it keeps saying that there is no texture yet there is
Oh yeah, don't you have to assign the texture in the material?
I've had that happen before
really like how this is turning out
hm
Maybe fuck up his face a bit more, give him a big scar or something
made interpolation closest so it looks more pixelated
and i love him
what should he be named?
i mean
most old fps games just had the characters name be something like (blank)dude or (blank)guy
like doomguy and duskdude
but since my game is named cronos, cronosdude doesnt sound right to me
I am scared - pic
hey, this is less of a modding question and more of a game dev question but does anyone have resources or examples for me to look at for structuring enemy controllers in game?
specifically for unreal
Alrigt, now that I'm back from Christmas time to get cracking on actually implementing split screen
My idea is to have 2 seperate ids, a network Id, shared by all local players, and a splitscreen id, that is a number 0-3
These then form a combined id where the network id is bit shifted left twice and the split screen id is added
To get the network id from the combined id, bit shift it right by 2, to get the split screen id take modulus of 4
so for example, if you are the server host, meaning your network id is 1 and you are the third player on split screen, your ids would be:
network = 1
splitscreen = 2
combined = 6
this area in a secret game i'm working on is a recreation of a recurring dream i've been having for a long time where a bridge near where i live is replaced with a bar in the middle of the ocean and you have to get there by walking across planks on top of barrels
it doesn't really make sense in the context of the game but i wanted to put it in my games for a long time and since this game is about the ocean i thought it was a good excuse
Does anyone know how to get the window size from code in Godot?
this is $15 and blueprint specific
Seems like get_viewport_rect().size was lost in the jump to 4.x or something
no problem
made a tilemap of the MGS1 VR missions levels
if someone wants the blend/fbx/texture i can send it here
is there a way i can make these bones face upwards? cuz when i try to rotate them in pose mode with local rotation, its not how i want it to be
what the hell am i looking at
i am normal and can be trusted with enemy design
nice
sorry to bury but
our (free) game demo just got a major update, lots of bugfixes, accessibility options, gameplay options, and new content
You are The Crusader, the last member of an ancient order of holy warriors pledged to defend the mortal plane against horrors from the abyss. The realm has been quiet for centuries. Your fellow defenders have all been slain or lost to the mists … but something is stirring. Something evil. Rumours of horrors stalking the wilderness have reached y...
Coming soon
@idle mulch, please keep all discussions in English.
sprite based enemies?
also this has strong HL2 Beta meets Perfect Dark vibes
nah, more like Q1/Q2 style
damn that's a lot of stairs
More so MOON/Dead Space in inspiration
tilemap coming along nicely
he usually has a brown jacket but in Time Crisis 3 he throws it away at you
bro also has an assortment of guns for his arm
im thinking of having the game be a mix of quake and metroid prime
quake's movement with primes upgrades
since the arm cannon is a blaster like samus'
bruh weren't you making a medievil game
that's kind of a jump between medievil and quaketroid prime
coloner ,,,, what the hell is happening to my 100% realistic VR simulation??????
thats the problem with me
i jump to something else when i come up with an idea
what im thinking is that this guy is a retired war vet who left to be with his family, got a job at a meuseum
but how should i make him use the CHRONOS project and go back in time?
time machine hidden in the museum
yeah but why should he use it?
out of curiosity sounds wrong
he would know better
well he's a retired war vet
maybe the war didn't go so well and after a time machine got invented he's asked to go back in time and stop whatever happened that made it turn out bad
I don't know what story you have in mind for the game though
he goes back in time, and makes his way trying to get back to his time
before he does
he accidentally warps to the big bang and fights it
maybe someone pushes him in
idk
I'm planning on having unlockable player skins for my game, but instead of doing it through a menu, it'll be a mini level where you have explore and find the different unlocks to purchase them. What do you think?
Kinda like MK's Krypt
https://fxtwitter.com/GameDevKS/status/1740008298794070288 amt hardballer longslide ftw lol
Precision is everything...
#Indiedev #Gaming #WishlistWednesday
Nah, see his robotic arm is on the left, it's completely different
Go back in time to stop the war he lost his arm in?
Hmmm, might be a bit too virtious
To cheat the lottery and get rich?
Go back in time to steal a bunch of historical artifacts?
lets say
he's a retired war vet that lost his family in the war
sees the machine, wants to use it to prevent the war
i was thinking the same for my game
or like how it was in Resident Evil 3 where you go into a separate level and you can go into dressing rooms and come out in a different dress
what kind of time machine
is it like the time machine from Dishonored 2
where you have to juggle between present and past to progress on one level?
or like in Titanfall 2?
Think of a blue cybee stopwatch
Dirk can use it to pause or rewind time in gameplay
That's a neat idea, but if you have to buy them then maybe a menu would be better, then having an armory level that displays all the ones you already own
For my game I've been brainstorming a bunch of ideas for cosmetics unlocked through achievements where you can wear a hat and a body cosmetic that can be swapped around freely
Cuz I'm not doing any form of micro-transactions in my game
The nine is backwards blud
🅿️
now how does it look
pushin 9
I'd say just flip the 6 upsidedown and use that as the 9
yeah itd fit better
still the same principle
just the other way around this time
you drew the filigree but no detail
oh shit is it P oclock already
add some lights or shadows to it
you need some cool baked in details
you must do it for lowpoly-low fidelty stuff
Bro, there are so many prerequsites to gettin splitscreen up and running
How do we tell the local players apart? Add a local player id and incorporate that into every player specific RPC and method
How do we let the split-screen players have different names and cosmetics? Create 4 different savable profiles
Ok, now we need a system to save and load from these 4 profiles
How do we make sure the server knows how many local players are joining? Well send that data before instantiating any players
Ok, so then we need to hold players somewhere who have connected but not sent their data yet, and restructure it so that the server waits to instantiate players untill it recieves the nessicary data
How do we do this as well as letting players decide wetehr to spectate, or select a team to join?
We need to have a landing page where they select that before instantiating the player but after joining the server
How do we dynamically resize the viewports to fit in the grid correctly?
Write a function that has an algorithm to do that automatically based on the existing window dimensions
How do we make sure each player has a seperate input device?
Idk I haven't even gotten to that step yet
What about if player 2 wants to leave? Should it disconnect everyone on the splitscreen connection, or just player 2?
What about if the inverse of that? Should additional splitscreen players be allowed to join once already connected to the server?
If one of the players is vote kicked, should everyone on the splitscreen be removed from the server?
Could you make him swipe his claws forward?
why
Oh man, for a sec I thought you'd already coded your own animation system for your engine
i was working on importing models with animations the other day
i'm using assimp to load the models so actually importing the animations was easy
actually displaying them on the other hand
why would that happen
just make them both leave then
simple as it is
also you don't need different names, you could just do what rocket league does and put a (2) at the end of the split screen player's name
when i'm sitting down for a game with a buddy next to a beer and some snacks, i'm not gonna bother naming myself and shit
cosmetics sure
you would also pre-determine those
chances are people aren't going 4:3 so you can just go with 16:9
and since the game knows it's split screen you'd just use a predetermined set of viewport displays
absolutely not, you shouldn't unless you wanna go through seeing if there are empty spots on the server to avoid overflows
you are asking obvious questions, of course you kick them both, last thing you want is the kicked player to take over the control of player 1 and stay toxic and shit
maybe list everyone as a separate device so you can kick people with more players from one specific device
Well that would be a single if statement to check if the current player count is less than the max player count, the question is more SHOULD that be allowed.
It's been 22 years since this game's original release, and I'm still seeing things I've never seen before! The level of detail in these games is truly astonishing.
*Edit - Thank you all so much for the views! 🥹 clearly a lot of people are as surprised as I was! When I uploaded this video, I never even expected to get 10 views... and now we're a...
damn i love that nikita animation
the hud is so good in this game
That one yeah, it probably should just kick all of them
So the way decerning which player is which is determined by 2 seperate ids, a network id, which is shared by each of the players in the splitscreen, and the splitscreen id which is 0-3 corosponding to which splitscreen player they are
These 2 ids are then combined into one master id where you take the network id, bit shift it left 2 and add the splitscreen id
So for instance if you are player 2 on network id 1 (the host), your combined id would be 1 bit shifted left 2, which is 4, plus 1 for the splitscreen id making the master id 5
the network id is what is used for actually sending messages and the splitscreen id is sent along with it so once it gets to the client machine it then decerns which player to do the function for
That way things that would be common for each player on the splitscreen like if some other remote player gets frozen is only sent once instead of once per split screen player, saving bandwidth from redundant RPC calls
If you want to get a player's network id, you bit shift their master id right by 2
And if you want their splitscreen id you take their master id modulus of 4
So if you were to kick a player, you just kick the network id and they all disconnect because there is only one actual connection between the 1-4 splitscreen playerds
adastral alpha 1 dropped
since its on the unity engine I'm guessing either from the thunderstore/r2modman or install bepinex and put mods in there
although I'm 100% sure the mods author also tell you how to install them in the description there's just no subway surfer on the side so you didn't pay attention
its almost like theres a channel for it #ultrakill-modding
it's something
Got the player profile system up and running, you now have 4 distinct profiles that can have different screen names, colors, and later cosmetics and flags
I also plan on expanding this to settings that can be different for each player like mouse sensitivity or FOV
I lost a little bit of sanity today spending hours on writing janky C++ GDExtension code in an effort to make programming enemy behavior fun
Implementing my own behavior tree, Utility AI and blackboard solutions
I kinda need them, especially the behavior tree and blackboard
as much as I love Godot, handling stuff like state and behavior trees is a nightmare because Godot doesn't let me keep a table of records
So I have to go deep into the C++ of it all and write my own way to do that, and then write my own interface to display in the engine for that
Now just imagine an actual character model instead of the ugliest collection of 3 meshes ever assembled
amongus 2
also if anyone has a better and saner idea than making my own blackboard and behavioral trees please share
Well what I would do is i would set them up like a state machine so the enemy AI has several states like perusing player, fleeing player, idle, flanking player, etc and those determine the behavior given the position and state of the target and their own position and state
So for instance, the enemy is in the idle state until the player crossses its line of sight so it switches to persuing, the player pumps a couple shots into it and now it is on low health so switches to the fleeing state
You could also set up "hive minds" where enimies in the same area have the abilitty to see what's going on with the others
For instance if one enemy goes from idle to persuing, the other enimies in the area switch to an alert state, where the don't quite know where the player is but are looking around for them, and when they see the player they switch to persuing too
Ok, so like, it keeps a record of the previous states it was in and can traverse the tree to previous states
How about a structure like this where the tree is stored in a 2D array, and each state has a pointer to its parent state, and an array of any child states, as well as whatever relevant state information exists
Actually, you don't even need pointers, just an index in the array for the parent state and an array of ints for the child states
And if you can't have an array of ints you could store a single int that holds the indexes of the child states as powers of 2
For instance, state 1 has child nodes S2 and S3 so 2^1 = 2 + 2^2 = 4 so the child_states int would be 5, and by using an algorithm to get the powers of 2 max->min that could only ever come out to indexes 1 and 2
READ!
This is a short video presenting the charge planted on you in Metal Gear Solid 1 / Twin Snakes / Integral. To achieve this, you must resist Ocelots torture.
chat how would you pull off an inventory like this
day 2 ambience inspired by what i saw when i looked out the window this morning
Any time you're making an inventory Dictionary is usually the answer
i don't mean the inventory itself, i would do a dictionary
it's moreso about the visuals
Oh, idk then, lol
i tried making a path2D and make the elements go 0.1 progress forward but it quickly breaks
bruvs making isometric VR missisons
Are you trying to make the elements of the list rotate? Like you switch to the next one and it moves down?
yeah
it can scroll left and right, and it would scroll in an L shape
so if you would scroll to the left, the top part would start moving down, the bottom one shuffles to the side and the list continues
you can see it in motion in the youtube video above
it's timestamped
Then use move_child()
When you scroll down have it take the first child of the vbox and move it to list.get_child_count() - 1
The vbox orders children based on order in the hierarchy
Once a child is at the bottom of the list and you scroll down, move that element to the "active" spot, and reparent the child in the active slot to the end of the vbox child list
i'm not sure i get that
i understand but Element4 has to scoot over to Element5's place
to my knowledge i cannot do that with vboxes
The active slot is a seperate thing
Unparent element 4 from the vbox and parent it to the active slot
Been thinking more about balance questions with split screen as I'm working on coding it
Like, what if some guy playing alone plugs in a controller for split screen, makes player 2 spectate, and places it somewhere on the map, now he just has a second set of eyes giving him an unfair advantage over everyone else. Should split screen players not be allowed to join as a spectator?
Also I think having split screen players be able to come and go as they please would also cause problems
Like quickly fluxuating player counts and players able to grief by plugging in 3 controllers, having them all join the enemy team and go afk
So I think split screen needs to be something set up on the home menu before joining a server
And if one player presses leave server, they all leave
Also been thinking about weapons and ammo
Right now I have about 10 weapons that can be picked up drawn out
The way I'm thinking weapons should work is that there is a set number of each weapon on the map and each player can only hold one at a time
In something like Quake or Unreal, the gun you start with is dogshit by design to urge players to pick up a real gun, but in Snowdown, the base kit is already pretty good, the snowball is already a pretty effective tool for freezing opponents, so I'm thinking weapons should be treated more like a power up than a "weapon"
I also think whenever a weapon is picked up it should send a little anouncment in the feed who has it now
That way it will create a dynamic where a guy gets the big gun, everyone knows he has the big gun and they want to take it, so they're all attacking the guy with the big gun and the guy with the big gun uses the big gun to defend himself from the onslaught of players trying to take it from him
I think that could be a fun dynamic, because in Quake there's nothing special about having the rocket launcher, if you want it, just go to the spot where the rocket launcher spawns, which is a fine system for Quake, but in my game I think the weapons should be a bit more scarce and powerful because the weapon you already have by default is pretty good
Also thinking about how ammo should be handled
I still want snowballs to be refilled by smacking snow piles with your shovel, that's not new, but what about the other weapons?
The idea I have now is that there are 4 ammo types: Snow, Ice, Water, and Beer Cans
Snow for instance would be shared between the snowball and another weapon like the snow blower, however, the snowblower is a pseudo-minigun so it should eat through ammo differently. There would be a max of 200 Snow ammo, the snowblower uses one piece of snow at a time, while the snowball would use like 12
When dispalying the ammo, the ammo on the snowball counter would be equal to the total 200 floor divided by its ammo consmption of 12
Beer Cans would act as hand grenades but also ammo for the rocket launcher and grenade launcher stand in, but it would be awful if players could hold an entire rocket launcher clip worth of hand grenades, but be equally awful if the rocket launcher could only hold like 4 shots, so maybe those weapons could work under similar ammo consumption rules as the snow ammo with how you magically have sextuple the number of beer cans on you when you pull out the can launcher kind of just hand waved away?
This games concept does not lend itself to logical ammo typing very well
how can i make this better
a pixel-y shader?
wdym
wdym2
it just feels off to me
what pixel shader do you mean
do you want it to look PS1 styled or late 1990 to early 2000's PC game styled
early 2000's pc
like quake
you want to palettize it
well idk if it's possible in Godot but lightmaps are a good way to go
also maybe a screen shader that limits the colors (or a color pallette like solace said)
im using unity
oh
dont see a palettize shader in the asset store
well then in that case lightmaps should be easier
also go vertex lights, quantize the textures and shit
huh
you can probably find something online
vertex lights are more PS1 styled than early PC
you bring up quake as an example but that game doesn't have this extreme of a color difference in it's palette
half life 1
although it wasn't vertex light
similar to it
a lot of the game is brown
half life 1 still used lightmaps
I'm not sure how it handled realtime lights though
true
i can send you a neat program you can use to quantize your textures
you get total control over the output, you have several options to limit palettes, a palette editor, you can limit colors, the dithering type, the quantization method
this is what i used for my medal of honor project
also for materials I personally recommend a standard material with specular lighting and the smoothness turned down and specular set to black
I'm pretty sure that's what dusk uses
not sure tho
I used img2pixel back when I was working on the unity version of blood drive
it's a useful tool
so
somethings odd with blender
i try to save the texture painted image
it comes out all blurry
odd
I usually just import my textures into pixlr and use the posturize effect
where did you try to save it?
wdym
in the UV tab?
go into the UV, and save it under image and see if it works
comes out like this
also try save as and check if there are options
did you save it as a jpg or a png
for me everything came out properly
png
weird
also what resolution
but i might have bad news for you tho
what?
since you painted in blender itself, the paint strokes might not be registered as pixelated but smoothed out
i copied the image and it came out fine
is it pixelated inside the UV tab?
but when i try to save it it saves as a WEBP
can you try this as an example
still WEBP
what's keeping you from converting it to a png
i change it but it wont load
you literally import it into any image editor and save it as a png
these go hard feel free to screenshot
now what do i do
ive loaded it into the editor and now i have to assign a pallete
i love the cut off "fuck you"
now how can i make this texture look like the ones we see in the website
maybe a bit too extreme
limit the colors to 32 for start
lower the dithering to give only a slight texture
also it's generally easier if you have a better unwrap
like use the texture space efficiently and go for higher resolution a little
this is a 256x256 texture and i'm still not using the texture space perfectly good
you can just see how much detail you can pack into such a small pixelated texture size
i think this is even less than 256x256 and there are still lots of details present
judging from the chunky pixels of your model, you probably just went for cramming pants UV into one corner, jacket UV into the other corner
Its my first time actually making a one texture image character, usually I'd just have several textures to form one character
Thought that would hinder the game
i mean, it doesn't really it's just more handy to have it all neatly in one spot
what you could try and do is try using projecting stuff from view
or use seams and unwrap
but only unwrap one thing at a time, put the UV islands aside for later, unwrap next thing, next thing until you have everything unwrapped
then select everything, select pack islands and Blender will conveniently pack those islands as efficiently as it can
you are still better off doing it by hand, but for starters it's also not bad
out of curiosity, can you send me the model in DM? i wanna try and texture it as a practice
Maybe tomorrow, I just turned my pc off so I can sleep.
same
also what you can try and do is mirror certain parts you know are gonna get reused
like the pants
for low poly art i usually enable snap to pixels in the UV tab so i can precisely merge the islands together
the face, pants, even the hands can get mirrored to save on space
Hm
wish i could send videos that show you how to do it properly but i can't think of any now, i sorta learnt it myself
AAA graficks in 1999
mgs1 still holds up in the modern retro market
Yeah, the late 90s Half-Life esc look is the eventual goal
I'd recommend looking at old and modern ultra low poly + low res texture art in general.
The stuff people do for things like 256 Fes for instance.
Yeah, I've tried a few times, but I'm just not really artistically inclined
I'm a software engineering major and a pretty left-brained guy by nature. Art, modeling, and especially music don't really come naturally to me. If I want my game to actually look good, I think I'll just have to recruit an artist at some point.
I made this duck with 128 triangles a while ago but never got around to texturing it.
also you can just, treat art as a technical challenge.
True, I'll take another crack at it once I finish implementing online splitscreen
You go from nailing one ps1 games whole aesthetic and in like 3 days you've already nailed MGS
Bro, I really wish I started this game with splitscreen in mind, I'm now having to redo a lot of the HUD because when you have multiple players on split screen having multiple timers, kill feeds, and chat feeds is redundant and takes up space, so now there are going to be 2 separate HUDs, an independent and a shared HUD with the shared HUD being drawn on top and each independent HUD being in each of the splitscreen viewports
Any Into the Breach fan here?
oops I did it again
actually here's a correct XM16 with proper proportions and proper features
guys will see this and go hell yeah
okay now it's very crude i know, i just used an animation player for the inventory
thinking maybe i should lay down a set of nodes and make the items just go to the next spot with each button press
and if the node's position overflows then set it to the start or end
i really like it
this is how it is in the original game
do ultrakill mods work for yall guys
idk dont have the game
it cures sea sickness too
In the very unlikely event I add a campaign mode, I thought of a story for Snowdown:
The games are losing popularity because people feel like it's becoming too corporate and losing its traditional roots so the organizers hatch a plan to let anyone who can pass the very easy qualifier course (tutorial) compete to create the illusion they're still preserving the everyman nature of the games, all while partaking in a betting scandal where they cheat and rig the games against the new comers making them easy snowball fodder for the "real athletes" while they bet against them
The plan works at first with thousands of randos enlisting only to be embarrassed on international television by getting pummeled by the previous champions, and they get eliminated in droves, all acording to plan.
Except for you
Just another faceless contestant from some no name town who was brought in to be a subject of an "epic fail" clip by the hands of a tournament veteran, but despite the unfair odds and rigged games, you hold on round after round. The organizers start to worry, because they're banking on you losing, so they start to get more intense with their cheating, but you defeat their champions one by one, inching ever closer to the title of champion.
After defeating the final champion, with viewership at an all time high, and everyone cheering for you all across the globe, the CEO refuses to crown you champion. He hops in his giant snow tank hell bent on freezing you one way or another. Screaming at you that you were never meant to win and that you cost them untold millions as he does everything in his power to freeze you, but you defeat him.
After his rampage the cheating scandal was exposed and the games were brought under new management with an organizer for a smaller independent tournament that you met earlier in the game taking the mantle. This results in a new golden age of the games, and this is when the multiplayer canonically takes place
It would be really short and pretty much just offline matches against bots with a few boss fights added in
Keep the bit of text at the bottom, but I think it looks better with the filters dark instead of red like the first one
Yeah, now they look too busy
In reality any of these designs look good and you can easily tell what they're meant to be at a glance so it's up to you
this is the final retake, i'll leave it like this
swear there's a time crisis 3 soundtrack that sounds like the MGS1 VR weapons OST
ive been stuck forever on one issue that could help my game's movement feel better:
how do i tilt the camera when you move?
like in quake or dusk (or ultrakill) when you move left or right the camera tilts in that direction
i really love that and want to put it in my game but idk how
there arn't any tutorials for it
plenty of tutorials that explain how to make your weapon move around slightly when turning camera, just adopt that code but move camera instead of the weapon.
i dont mean like that
like the tilt slightly when you move left and right
i mean the code remains the same, just different thing triggers it
So I got the welcome page as well as sending over player info from the savable profiles like name and color working, and in theory, split screen should work now (except for each player having a different input device which I'll take care of later) but now...
THE MOUSE LOOK BROKE AGAIN WHY!!!!!
None of the code I changed had anything to do with mouse look, how does that seemingly simple code always break when I change something completely unrelated
Well if it's anything like last time it will magically fix itself somehow, so whatever
Also interesting quirk about how GDscript is compiled, the bit shift operator does not seem to have an earlier order of operation over addition like multiplication or division does
So if you did
var x = 1 << 2 + 1
instead of x being 5, it would be 8
So anyways now I have to add a lot of parenthesis
i think i have an idea for how to move the camera side to side
all i need to do is make it so that when it detects horizontal movement, it'll rotate the gameobj that has the camera by a certain amount on an axis
Ok, after testing, apparently bit shift in C works like this too, so I guess this is normal. I need to use bit shift more often. But still reason number 69420 why polish notation is better than infix notation
but how could i do that...?
Well how does your horizontal movement already work, surely in order to move the character left and right at all it has to use some kind of velocity or at least detect some kind of input
its using a vector3 for the movedirection, it also uses this to as well
{
//calculate movement direction
moveDirection = orientation.forward * verticalInput + orientation.right * horizontalInput;
//on slope
if (OnSlope() && !exitingSlope)
{
rb.AddForce(getSlopeMoveDirection(moveDirection) * moveSpeed * 20f, ForceMode.Force);
if (rb.velocity.y > 0)
{
rb.AddForce(Vector3.down * 80f, ForceMode.Force);
}
}
//on ground
if (grounded)
rb.AddForce(moveDirection.normalized * moveSpeed * 10f, ForceMode.Force);
//in air
else if (!grounded)
rb.AddForce(moveDirection.normalized * moveSpeed * 10f * airMultiplyer, ForceMode.Force);
//turn gravity off while on slope
rb.useGravity = !OnSlope();
}```
Use horizontalInput then
but this is code is on the player
i think i need to make a whole new script to tilt the camera
export horizontalInput and reference it from the cam tilt script
how would i do that?
throw an @export in front of the horizontalInput variable declaration and now it's global and can be referenced from other scripts
or create a second variable that is exported and set that to horizontalInput every process update, if you want to protect the scope of the real horizontalInput variable
im typing @export in the float for horizontalinput, yet i keep getting a red line
Oh wait you're using C# not GDscript
yeah
heap variables in C# have programmer controlled scope, public means anyone and their dog can use it, private means only this script can use it, protected means this class and the ones derived from it can use it
i do know this, the really only thing i know of c#
but the public HI variable is in slopehandling
Then in your cam tilt script reference slope handling and get the horizontal input from it
would i do the same thing here?
add a public
the slope handling isn't its own script, its a public void in the playermovement script
Ok, then reference the playerMovement script from the camTilt script
or just incorperate the cam tilt code into the playermovement script and reference the camera object
Ah yes, ideal gameplay experience
so- public gameobject for the cameraholder, yet where would i call for it?
Well in your playerMovement script add in something along the lines of:
[serializable field] private gameobject cam;
then drag the cam into the slot in the inspector
i know that, but where would i go like
gameobj is rotate when horizontal movement is this
Well I'd assume in your update function you would make a call to a cam tilt function where you would lerp the cams rotation to some target rotation multiplied by horizontalInput
It's actually not that bad with only 2 players
what's a lerp?
linear interpolation
Basically it picks a number between 2 numbers given a value between 1 and 0
for example, say I said
int x = lerp(0, 2, 0.5)
x would be 1, because it is exactly 0.5 of the way between 0 and 2
a whole lot of this is really new to me, so i hate to ask this
but how would i make this work?
Nah, it's fine, you can ask questions, that's how you learn
bruh
interpolation
it makes motions gradual
it makes just about anything gradual
you don't go from 0 tilt to 4 degrees instantly, you ease the camera
What I would do is set a constant "max_rot" multiply that by horizontanInput for the target value of the lerp function, with the current rot of the camera as the value being the "from" value, and for the interpolate value set it to some kind of rotation speed multiplied by deltaTime
or just clamp the rotation so it cannot get above a certain number
that works too
but getting it to return to zero takes a few more hoops to jump through if you do it that way
so ive looked up the lerp function to try and understand it
i would put the delcaration in my cameratilt function, is that right?
You don't declare lerp it's built into the library
Just call it
I'm pretty sure unity standard already has a lerp function, so just use that one
mathf.lerp?
mathf is a floating point math class that I'm pretty sure would have to be imported
hm
so whats the unity standards lerp function?
Wait no that is the unity one, my Unity C# is just rusty, lol
Mathf is already in unity standard by default
so id use mathf.lerp
Yeah
you say "constant "max_rot"" but what is that?
const float MAX_ROT = insert whatever you want the max rotation to be;
const just means constant, as in this does not change
Usually constants are all caps, but they don't need to be, it's kind of just standard practice (The MF DOOM rule)
so...
what would you recommend the max rotation be?
is it like a percent orr
idk, that's kinda up how you want the logic of it to work
If you're going to work with degrees you could make MAX_ROT = 5 for 5 degrees for instance
so 5 for 5%
Nah, there's also doubles, floats better (in most situations)
Lerp takes 3 arguments, the first being what you're lerping from, the second what you're lerping to, and the third the lerp ammount
So something along the lines of Lerp(from_rot, target_rot, rot_speed * Time.deltaTime);
so...
Mathf.Lerp(0,f 0.05f, 2 * time.deltatime)
instead of "0f" plug in the current cam rotation
so
gameobject cameraholder.rotation
Well that's a quaternion, you would want to have a stand in variable for the rotation and then set the rotation on a specific axis using that variable
how would i do that?
or is there another way to find the current cam rotation
You could use Euler angles if you're not planning on having it rotate 360 degrees
Just get localEulerAngles.z
actually-
now that you say that using a quaternion makes the camera rotate 360 instead of side to side, i actually like that more
makes if feel like the player is actually moving
yeah but always do footage of it and send it around to see the reaction
camera movement is an iffy topic
you might think a camera tilt or rotation is cool and stylish but in reality it's annoying or distracting
when it comes to that, make some footage and ask around if it's the correct amount
how are you stuck
elaborate
elaborate as in explain which part you're stuck at
you have three parameters
value A is the value you want to linearly interpolate
yeah
value B is the value you will interpolate it to
value t is the time
how do you handle movement?
if i were trying to do camera tilt, i'd probably tie it to the player's direction
what i think is that it goes like this
Mathf.lerp(0f, 0.05f, idk)
okay so
first things first
define a variable for the initial rotation
that will be 0
or at least it'll be the default for now
so
private float initialCameraTilt = 0f;
and then type initialCameraTilt instead of 0f in the lerp
not talking about tutorials
i wanna write psuedo code but don't wanna make utter bullshit up
okay so
oh
my bad
i didnt get the interpretation
make a float for the sway speed
it'll be the multiplier for the lerp speed
make one for the strength
float Sway_Speed = 2f;
Vector3 Sway_Strength = new Vector3(2f, 1f, 1f);
Vector3 Sway_Rotation_Min = new Vector3(-10, -2, -2);
Vector3 Sway_Rotation_Max = new Vector3(10, 2, 2);
now i need some time to digest
obviously
thought so
yeah
theres fixedupdate as well but i dont think it really makes a difference
just updates harder is what i think
i call for the function cameratilt in the update function, so i have a private void that has that function
i found this randomly
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerCam : MonoBehaviour
{
public float sensativityX, sensativityY;
public Transform player;
public Transform cameraPosition;
public Transform orientation;
float xRotation;
float yRotation;
public float _tiltAmount = 5;
public float _rotationSpeed = 0.5f;
void Start()
{
Cursor.lockState = CursorLockMode.Locked;
Cursor.visible = false;
}
// Update is called once per frame
void Update()
{
Tilt();
transform.position = cameraPosition.position;
float mouseX = Input.GetAxisRaw("Mouse X") * Time.deltaTime * sensativityX;
float mouseY = Input.GetAxisRaw("Mouse Y") * Time.deltaTime * sensativityY;
xRotation -= mouseY;
xRotation = Mathf.Clamp(xRotation, -90f, 90f);
yRotation += mouseX;
Vector3 v = transform.rotation.eulerAngles;
transform.localRotation = Quaternion.Euler(xRotation, yRotation, v.z);
orientation.rotation = Quaternion.Euler(0, yRotation, 0);
}
public void Tilt()
{
float rotZ = -Input.GetAxis("Horizontal") * _tiltAmount;
Quaternion finalRot = Quaternion.Euler(xRotation, yRotation, rotZ);
transform.localRotation = Quaternion.RotateTowards(transform.localRotation, finalRot, _rotationSpeed);
}
}```
upper snake case
jesus christ my eyes
motherfucker
Hi I got this first person camera tilt script. It tilt’s to the left and right when moving horizontally. Any idea how I can make this smooth / tilt slower instead of it just snapping to the angle. Heres the script: using System.Collections; using System.Collections.Generic; using UnityEngine; public class FPTilt : MonoBehaviour { public ...
there is an answer also down below if that doesn't work
i'll be honest, c# is kinda complicated
you can say that twice
actually it's not
just the syntax is more extensive
from what i can gather gdscript is very straightforward compared to most languages
anyways what i'd probably do is tie the camera tilt to acceleration and not to velocity, if you figure out how to do that
that way the camera swivels back to normal if you hit a wall
or it won't tilt that much if you go to the side at a slower rate
like when forward strafing
oh
my god
this is exactly what i needed
nice
i cannot express the amount of happiness i am feeling right now
ive been stuck for god knows how long trying to figure this out
sounds like you didn't check hard enough
i found like four different topics discussing code that serves the same purpose
man
feels like a huge weight has been lifted from my head
i also kinda feel kinda dumb for not checking anywhere else other than youtube
but i know a bit more now
what would you think's a decent tilt amount?
im thinking between 2 or 3
i didn't check on youtube either
bruh show comparison
Fixed update is tied to physics updates which happen at a fixed rate like 60 per second, or whatever you set it to. Update is called every frame
aaaahhh
thanks i forgot
so it's like Godot's _process() and _physics_process()
Pretty much
I have everything lowercase and no symbols, is that bad?
perfecto
now that im over that hurdle
i need to figure out how to move the arm with the camera since his arm is the gun
sisyphus script
Variable_Name_6
this is upper snake case
I guess it matters when you arent a solo developer
you could probably parent it to the camera or use a viewport
In C# it's standard for local variables, parameters and private fields to be camelCase and most other stuff to be PascalCase
It's not common to see snake_case or Upper_Snake_Case except in really specific circumstances
GDscript is pythonic where snake_case is common/standard
ijustwritemyvariablenameslikethis
EPICVARIABLENAME
hello BASIC programmer
its on the rig
I dont yell my variables at the game engine
time to make a separate rig
are you planning on using a third person model in first person
because it's not impossible, but it's pretty damn hard to get right
yes
i plan to have some multiplayer
mate
do a separate rig
set the visibility layers so the player doesn't see his own TP model
and just animate the hand separately
hm
like how most games do it
also
i have an idea for the cronos project (the stopwatch)
basically so that it doesnt really interfere with multiplayer, i can have it so it makes a huge circle that slows down everything except the person who activated it
that'd be super fucking annoying, mind me saying this
sure
you're better off just making the player faster
never introduce gameplay hinderances that can be exploited
well, the player can get really fast pressing shift or sliding down a slope
then you don't need time slowing
or maybe you do, but it's definitely not the way
imagine if in quake 2, the grenade explosion broke your legs and slowed you down for 10 seconds
then what could the watch do?
im thinking that it should have a use in gameplay, otherwise my game is just watered down quake
listen
titanfall 2 had a time machine portion, yet it wasn't included in the multiplayer
play with the idea before trying to implement
what i could do is have the watch removed in multiplayer yet have it in singleplayer
ill think on it
yeah
or make it a powerup
in multi i mean
if you wanna make it like quake, you need to understand what made it as good as it is
powerup management, rotations, movement, ammo placement
im taking a page from ultrakill and having no ammo problems
since the dudes arm is a plasma cannon
but i do have one bad idea- add a grapple like in metroid prime
more movement
but imma consider tomorrow
i am tired
Yeah, yelling is for constants
no constants in my game!
Literally like the first 50 something lines of my player movement script is all constant declarations, lmao
god damn it I hate shaders, always some dumb issues like this popping up on the edge of the screen!
overscan
uh oh
puppetcombo vhs filter
Yes I too remember watching recorded footage of my n64 ps1 aesthetical cronenberg from my VHS player after the game broke
God i thought I was the only one
i feel like i should add a shader to my game
what would you recommend?
bro says "a" shader
start with a palette/quantization shader
if you really want it like quake
but i don't recommend using screen shaders
I'm just trying to add a simple underwater effect
Probably just has no clue what a 'shader' really is.
This might come as a surprise to you, but your game already has a shader!
many in fact
they just
ok... then how would i make a skybox?
like one that's like in ultrakill or any other fps game like quake
no- i mean like
how the hell does one make a sky this amazing
1000 hours in ms paint I guess
So a shader is basically a script that gives the renderer special steps for how you want things to be drawn.
For instance, say I have some liquid texture and I want to make the texture look like it's wavy and moving. I would add a shader that tells it to use a sine wave to make the texture look like it's waving back and forth
hm.
so then
how would i make it look...
better
Well what do you mean by "better"
Better can mean a lot of things depending on what you're trying to do
how do i make it look like the fps games of old
like quake
or dusk
Well I'm not much of an art guy, but you have to create textures at a low resolution
For instance most of Dusk's props and environment textures have image sizes of 128x128 or 64x64
now-
how could i make a skybox like dusk?
dusk has just 6 sides of a cube around the map
pretty easy to do in blender, just U -> project from view in uv editing
quake I think only has a plane above the map and that's it
I'm pretty sure Dusk skyboxes are manipulations of real images
unfortunate
where i am the sky is grey and trees everywhere
cant get a good image without getting trees in the way
I mean you could also just look up royalty free sky pics
https://polyhaven.com/hdris steal some from here!
completely different way than dusk/quake tho
ive messed with a sky image, but when i put it in unity and add it to a material for the skybox, it stretches it into a square
Are you using a 6 sided cube skybox?
no
panoramic
Uhhhh, idk wait for one of the art guys to give you an answer
k
i mean panoramic is a sphere
you cant just put a square texture on a sphere and call it a day
Bro, why can't godot let you duplicate actions in the input map
I have to do each of them 4 times with a different number at the end, come on, I got places to be
amazing he says
you can just make skybox panoramas
you can do sky shaders I guess but I don't see the point
only real way i know how to make skyboxes is by vertex coloring one
and the problem with panoramic skyboxes is they usually get pinched at the bottom and top
like in spyro
bruh
are there no environments in unity you can change?
look up unity skybox tutorial on YouTube
considering looking up cubemap skyboxes
but i fear i might accidentally steal some shit
thats what i don't like about taking images online
you're putting too much thought behind it
don't overthink stuff like that
just make sure it's not licensed
these are all CC0 licence
everything allowed, do whatever you want
how do i find that out?
Does anyone know where the "double sided" option is in Godot?
I don't want the player's helmet to render from the inside, blocking the camera
geometry
or the material
material check for transparency or alpha, not sure which
and there you can set culling mode
back, front or none
but why not just turn off the visibility of the helmet in the first person camera?
Because there are 4 local players and I would need to make it to the helmet is on a layer that is invisible specifically to that camera, but not the other 3
And do that for each of them
And make it turn off when it switches to 3rd person after being frozen
do you not have a separate third person model
how about you toggle the visibility layer instead
There is not a seperate 3rd person model because the local players all occupy the same instance of the game
bruh
I know I could set it up that way, but it would be a lot simpler and achieve basically the same thing to just make the helmet not render from the inside
;how do i find out what's licemsed and what's not
So I would like to avoid doing all that if the simpler option, that achieves the same thing, exists
Actually the problem wasn't even the cull mode, I just made the visor too short and the back face was in front of the camera
Wait hold on, I will have to set up a "player1_only" layer for each player at some point for the first person view models, so that player 1s view model won't be visible to the other local players, at some point anyways
And the viewmodels will have to become invisible in 3rd person
So basically I'm going to have to do the inverse of this at some point, lol
Look up "royalty free images" or "stock photos" there are websites that specifically only have public domain images
hm
got it
also
im gonna look up mythologies in order and piece together some eras that the dude can go to
or better yet just go rando
i have a bad feeling about adding christian mythology into it
found a good set of skybox images for a cube shape, but the top and bottom arn't seamless
if you're using a 6 sided skybox then some might be in the wrong places, and also set the texture repeat mode on all skybox textures to clamp
they all have words indicating what side they are
yeah but unity doesn't abide by those rules
happened to me multiple times
you just gotta mess around with the north, south, east, and west texture until it looks right
none of them work
wdym
well now you gotta "rotate" the n,s,e,w textures now
until they match with the up and down textures
just drag the front, back, left, and right textures into the next slot until it fits
to me it looks like the top and bottom are just mirrored
maybe you need to blend them together
whats the order?
it's in the .mat file i just posted
if that doesn't work then
+z = bluecloud_rt
-z = bluecloud_lf
+x = bluecloud_ft
-x = bluecloud_bk
and top and down are the same
what are these
left side is what side of the skybox i'm talking about
right side is what texture i'm saying to put in
that works
is there a way i can transform this into a cubemap
to only use one image besides 6
aren't cubemaps made of 6 images made into a cube
it won't really save any space to merge them into one
you COULD put them into a cubemap and use the cubemap sky shader
you just need to put them into a layout unity supports https://docs.unity3d.com/Manual/class-Cubemap.html
i mean you will still use all 6
trust me, merging everything you can into a single file isn't a good thing either
hm
don't optimize shit in the prototype phase
Depending on how you choose to lay out the cubemap image you'll technically use more space lol
basically
oh
well, ive been using that quantize thing to change the texture, yet it saves as 512x512
nvm fixed it
there we go i like that
we now have the fps model
why don't we just rename this channel to #game-development
because people would flood in here asking about development of NB games
The ultrakill mod people already get lost in here all the time
speaking of NB game development- i found a thread on steam with a response from David Szymanski about how he made the textures for dusk (which really helps me with making textures)
dont just talk about it, link it
Welp this is getting bookmarked for later
yeah
i feel like making a logo for the game
what do you mean
what is that file
it told me to download and transfer the files to the ultrakill files
i demand help again, new blood #general-modding chat
found inkscape, vector art good
but now i have a dilemma
i like the vector art because i can pack more sleek features into it
but i like the genuine simplicity of the pixel art one as well
Personally vector art I think looks better
Depends on the context of what you're making.
If the rest of the game is quite low res I feel like the pixel art would fit better.
keep pixelart
maybe if you can squeeze in a few details like the vector into the pixelart
but the pixelart itself is good and iconic to the aesthetic
Definitely that one ^
which do you think the arm should be?
the 2nd makes more sense, since the limitations of a normal arm
the 1st however i like more than the 2nd
2nd one has the little gizmo control panel thing on the side facing the player which I think looks nicer
got it
also-
i have a script that makes things rotate, should i have it so when the player presses m2 the things near the barrel spin?
(also increasing the projectile speed)
better yet
when they shoot they go back a little
for an extra ompf
It would probably be easier to just make that an animation
Unity has a built in animation that's pretty intuitive for doing things like that
make it an animation for sure
also you could just have secondary fire modes that make the gadget move up
or an upgrade
like the potatOS in Portal 2
just an addon to the already existing gun
i have an idea
wot
have the gizmo pop out like the sides of a portal turret and thats the grapple
The screen on the gizmo should show how much ammo you have
Ah, ok
move it a bit more to the side tho
it's pointing past the middle of the screen
doesn't look right unless the arm shoots exactly where it's pointed
the gizmo or the arm
yes
both are pointing past the middle of the screen
so where would i move it
it's like this from the top
looks ok to me
Usually your view model and character model are 2 separate things
Well then maybe make his arms a bit smaller
hows this
bruh trying to make adjustments to the FPS rig by going third person 💀
Guys is there a mod where ı can add aim assist for amid evil? (yes ı'm a controller player)
is this better?
I'd say it's better
im thinking about adding a score at the end of each level like ultrakill
yet instead there are 4 ranks
bronze, silver, gold, and platinum
No Cobalt and Obsidian?
no
I'm uninstalling right now
coal moment
hey nice mk23
@hazy sky no, just the whole gun lol. It's very distinctive.
yeah but it's easily confused with the USP
Nah barrels too long
After more than a year in development, I'm happy to announce the release of Call From Within, a psychological horror game based on early-mid 2000s games
https://youtu.be/wS2OSSNHP3A
Congratulations on your release! Hope it does well!
Thanks ^^
Congrats and good luck, dude
Congratulations! I will check it out
made a timestop animation
still working on it
and also forgot to change the timeline
now-
i reconsidered
so heres all the ranks
they all have this texture rn, but will have their own later
Where is this?
In this
So are you able to set the device index of a controller in godot?
Like can I set a controller to be device 1 when it is being picked up as device 0?
wdym
Like this new gun model/placement
had to move the camera
because the camera was too close, and couldnt show everythhing
i like them decimated
looks more like spyro font
Are cobalt and obsidian just F and E ranks or do they have special requirements like finding a secret level exit or completing the level under a certian time?


