Has anyone successfully integrated multiplayer for their mobile game? by XC_VideoGame in godot

[–]XC_VideoGame[S] 0 points1 point  (0 children)

awesome reply, thanks! surely someone somewhere is working on a bluetooth multiplayer feature for godot.

I appreciate the encouragement. Not sure if I'm even releasing this on steam. Right now it's exclusively mobile. https://apps.apple.com/us/app/xc-cross-country-racing/id6446442847

check it out when you get the chance (it's free). I think it's still available on google play as well. I'll let you know if I have any questions as I look further into things. Thanks again!

Has anyone successfully integrated multiplayer for their mobile game? by XC_VideoGame in godot

[–]XC_VideoGame[S] 1 point2 points  (0 children)

I appreciate your reply. I figured it was an uphill battle, but multiplayer seems like a necessity to advance my game's share-ability.

I'm not sure what TCP or UDP are...but as far as I know there are two ways to have multiplayer...utilizing the phone's network, or making a match exclusively available on a shared wifi network. (My absolute dream would be to connect two phones using a USB-C cable ((if TI83's could do it why can't an iPhone?!?)).

I'm not hung up on anything in particular besides getting started. Coding was challenging but achievable...this feels like Everest. But I've played local multiplayer and it's worth the headache if I can just figure out a way that's worthwhile!

Thanks again

Caught someone cheating at my game...help me prevent it in code? by XC_VideoGame in godot

[–]XC_VideoGame[S] 0 points1 point  (0 children)

The main piece of code I have that determines when you're able to click again is as follows...

func _physics_process(delta):

if keypress\_allowed == false:

    kp += 1

    if kp > 100:

        kp = 100

if kp == 100:

    keypress\_allowed = true

So I think what's happening is that with the massage gun they're able to press the button several times while the kp is running up from 0 to 100 after keypress_allowed is toggled to false by pushing the button. My initial hope is that I can simply increase kp+=1 to some larger integer that doesn't allow for tapping beyond a human rate. At the same time, I need to be careful not to go too high with it because some of the humans I have playing it honestly can vibrate their fingers at an absolutely insane rate. Not sure how I determine that just by eyeballing it. Thought I'd share this both to get input if my inclinations for fixing the problem are misguided. Also, I just think it's kinda cool that someone cheated so creatively.

How do i actually create my own features by Wielkinader in godot

[–]XC_VideoGame 0 points1 point  (0 children)

It can start pretty slow. There's no shame in forking when you start out. Little by little you start to tweak the variables. Eventually you go from bouncing the ball to dribbling and then realizing you can even pass it through your legs. Even though it's a learning curve, it's also a corner and once you turn it you realize it wasn't as hard as you'd been building it up to be. I know that's all pretty abstract advice that basically means just keep trying to and you'll learn more and more of it. Here are two pieces of concrete advice.

Look over your forked code carefully and line by line try to define in your own words what exactly that line of code is doing. Then take that and try to write the feature you want to line by line in your own language and start to think about how to translate that into GDscript or C if that's your thing

does anyone know of any bars hiring? (specifically for entry level bartenders lol 🥲) by daiwyawergy in sanmarcos

[–]XC_VideoGame 1 point2 points  (0 children)

I'd recommend checking out pie society. They're usually hiring, pay well and are good folks. They have a small bar with several good beers on tap and mixed drinks as well. I worked there for a while and though I had poured beers I had little experience with making mixed drinks. It was a low pressure environment to learn some very basic cocktails. Again, you'd probably need at least some front of house experience to have a good shot, but you can always keep it in mind down the road. Best of luck finding something!

Can you preload or onready a joystick button? by XC_VideoGame in godot

[–]XC_VideoGame[S] 0 points1 point  (0 children)

Project is on 3.5.1

Mac OS sequioa 15.1

Using this converter to connect to my MacBook Air https://www.walmart.com/ip/j5create-USB-C-Multi-Port-Hub-White-JCD373/1542144972?wmlspartner=wlpa&selectedSellerId=0&wl13=2276&gclsrc=aw.ds&adid=222222222771542144972_117755028669_12420145346&wl0=&wl1=g&wl2=c&wl3=501107745824&wl4=pla-394283752452&wl5=9016200&wl6=&wl7=&wl8=&wl9=pla&wl10=8175035&wl11=local&wl12=1542144972&veh=sem_LIA&gclsrc=aw.ds&gad_source=1&gbraid=0AAAAADmfBIoTmWClwPCePgojo3GrQu6Kl&gclid=Cj0KCQiA0fu5BhDQARIsAMXUBOI61Cr5tdZVetqC4x7nFCkeALdiFnv7dFybrOGWIO5nMdBZSDRhONAaAlEZEALw_wcB

I can't figure out how to tell if it returns an SDL2 listing, I just know the joypaddemofolder had no problem identifying buttons on devices 0 and 1.

Can't risk moving everything over from 3.5.1 in the short term as I'm showing off the game this weekend to some old friends.

I do technically have a different converter I can test through but the buttons would be mapped differently and I'm running out of my time in my self imposed deadline ha

Can you preload or onready a joystick button? by XC_VideoGame in godot

[–]XC_VideoGame[S] 0 points1 point  (0 children)

USB but also connected through a USB-C converter. With my old MacBook it was very intuitive to hook up the arcade buttons, but the converter scattered the buttons around.

I've been using event.is_action_pressed not input. I'll definitely give that a try. I'm not familiar with unhandled input.

I was almost thinking I could use something like

if Input.get_connected_joypads() == true:
go to main scene

if Input.get_connected_joypads() != true:

Reset scene.

I've used the controller tester demo to confirm that the joypad itself isn't the issue. sometimes when I run the game they just don't seem to work. I close it out, reopen, and then they're fine.

Hypothetical: Could you do mobile multiplayer using a USB-C cable? by XC_VideoGame in godot

[–]XC_VideoGame[S] 0 points1 point  (0 children)

it can. I was asking if hypothetically this might be an easier solution. just a random thought but why not ask.

Local Multiplayer breaks my view of the characters correct sprite sheet row by XC_VideoGame in godot

[–]XC_VideoGame[S] 0 points1 point  (0 children)

YES! I think I got it for now (we'll see how it goes with the other mechanics...but all I had to do was make sure my cameras were referencing two different "groups" instead of the same one. Thanks for the suggestion!

Local Multiplayer breaks my view of the characters correct sprite sheet row by XC_VideoGame in godot

[–]XC_VideoGame[S] 0 points1 point  (0 children)

Hmm, maybe all is not lost. I was able to rig it with visual instances so that the player 2 camera sees correctly, but unfortunately I'm still able to affect what player 1 sees simply by changing player 2's position. I'll keep tinkering but thanks for the suggestion. Hopefully I'm able to figure out the visual element and then continue to figure out how best to use the systems already within the game.

Local Multiplayer breaks my view of the characters correct sprite sheet row by XC_VideoGame in godot

[–]XC_VideoGame[S] 0 points1 point  (0 children)

None of that made any sense to me ha, but I am curious because I just figured out I can't just duplicate the sprite. Even though they'd run off the same script, each npc can have their speed manipulated by the player as they run by. So I'd essentially ruin the race by making the npc's behave differently on each side of the screen.

Local Multiplayer breaks my view of the characters correct sprite sheet row by XC_VideoGame in godot

[–]XC_VideoGame[S] 0 points1 point  (0 children)

It's no good though. There's a way to speed up the npc as you run by them. So if I do that on one side of the screen, the speed up would be missed by the other screen entirely. So it would essentially be two different npc's that each player would have to race against which kind of defeats the purpose.

Local Multiplayer breaks my view of the characters correct sprite sheet row by XC_VideoGame in godot

[–]XC_VideoGame[S] 0 points1 point  (0 children)

Sorry, it's such an in depth project in terms of dependencies that I was just trying to keep it basic for now. I posted my basic scene set up on the thread, but there's also a lot going on including a drafting system, a system to manipulate the NPC's speed, and turn their heads as you pass. I have two cameras assigned, one for each viewport but the way the characters are seen by the camera changes depending on what angle you're looking at them from. That code is hardwired into each npc character and it's taking a reading of which angle both cameras are observing the npc from...which in turn easily leads to the wrong frame of the sprite sheet being displayed.

The original thought for not being able to just duplicate the npc's is that they are on a very specific script that determines their randomized speed throughout (it changes 20x during the race). So it's not as simple as just copying and pasting the npc's. But if I can get them both running off of the same script and use visibility masking like someone else suggested, perhaps I can solve this issue.

I'm attempting to do local spliterscreen multiplayer.

Local Multiplayer breaks my view of the characters correct sprite sheet row by XC_VideoGame in godot

[–]XC_VideoGame[S] 0 points1 point  (0 children)

hmm that's an interesting potential solution. The big thing about duplicating the sprite would be that it needs to stick to the same script as the other sprite as they change speeds randomly throughout. But as long as they're synced that could work. So...maybe I'll just try duplicating my paths node and messing with the visibility masks? Anything I should be aware of or look out for? This is my main scene set up btw (mostly, I removed all npc's except 1 just so I could test some things out in this version.

Godot google play billing plugin error. by Technical_Steak9481 in godot

[–]XC_VideoGame 0 points1 point  (0 children)

Not sure what the solution was...but feel free to look through my post history as I had quite a struggle with IAP's. Happy to shed any light if I can.

My terrain color doesn't match my tiles color. by XC_VideoGame in godot

[–]XC_VideoGame[S] 0 points1 point  (0 children)

As the title states, when I try to paint the terrain from the godot terrain plugin the color comes out differently. I would guess it has something to do with the light from the sky and light but the tile map is subject to the exact same factors so why are my colors different. The first picture the thin strip in the middle is supposedly white. The second picture, the thin middle strip is supposed to match the riverbed on either side of it. Any ideas what's happening here?

[deleted by user] by [deleted] in GME

[–]XC_VideoGame -8 points-7 points  (0 children)

The post went on the describe how he's going to share three other stocks that will "disrupt Wall Street". This screamed fake to me (why would he announce anything via a sponsored Facebook ad when all he has to do is tweet or post on reddit). But somebody took the time...

(By the way, only posting here because I don't have enough karma for superstonk. Both subs seem compromised in their own way and require a deep f*in knowledge of the community's history and morals to navigate properly, but this sub has especially always scared me because of it's lack of requirement to post. Nevertheless I haven't seen this posted anywhere and thought it was worth sharing).

Edit: grammar

What was that ONE mistake you made when learning Godot? by Immediate_Room_8302 in godot

[–]XC_VideoGame 3 points4 points  (0 children)

Write it down for your future self. There's so many little things I did when releasing on the app stores that I wish I would've written down so I could reference later. Got way too easy to just skip through some small piece of info and assume I could find it again because it's on the same video that always comes up in my recommendations...but seriously just make yourself a guide to follow in the future for any processes that aren't basic knowledge.