shepherdgames's Forum Posts

  • Hi,

    I'm trying to achieve auto scale up/down based on the window size.

    Irrespective of the aspect ratio, If I increase the layout size it should scale down to fit the view and it I decrease the layout size it should scale up.

    Something like this but not exactly the same.

    Subscribe to Construct videos now

    This video demos only in 1:1 aspect ratio but when try in 16:9 it shows black screen, it should not happen. The maximum width or height a user can see is 1024 and irrespective of the layout size I should be able to see only the background but not any black screen.

    Here is the c3 file

    https://drive.google.com/file/d/1Q-QO4MSpAOarATIwxq7UZJHQH_hNnXob/view?usp=sharing

    Any help would appreciated.

    Thanks in advance.

  • Hi,

    Is there a way we could extract part of text from a string like

    {"-M-24aDCCzcQNaczKWrn":{"Email":"EmailID@gmail.com","Key":"-M-24aDCCzcQNaczKWrn","Name":"Full Name","Type":"Profile","Username":"fullname"}}

    I want to extract the email id and username.

    Can anyone help?

    Thanks in advance.

    Tagged:

  • Hi,

    Can anyone help with querying data from firebase? I know this is out of C3 but many of us are using Firebase support so I thought I could seek help here.

    The database is in this way

    By Email = "sudeepmailin@gmail.com" I should get the Item value "Sudeep Vundurty" (not Name)

    Anyone has an idea on how to do this?

  • Well, I present, my procedure is from Peru and I have a problem ... In my mobile video game there is a character where you can put your mask by selecting the image of your cell phone, but there is a problem when putting Image of the URL selector file, the Image protrudes from the pixelated circle.

    How do I make the image fit in that pixelated circle?

    Happy to see someone has same request as mine. Is there are a way we could make the uploaded image to fit into a circle?

  • Dear Buyer,

    Please send message me at sudeepmailin@gmail.com, if interested.

    Thank you for interest in buying our game. Android Game (Asia Version) – Tim The Traveler – play.google.com/store/apps/details

    US & Europe Version – play.google.com/store/apps/details

    Game Play – youtube.com/watch

    We have developed a wonderful game but due to insufficient funds we are unable to market it and hence, we are planning to sell the complete game along with its source code to help us fund our next project.

    The game is ‘Tim The Traveler’ listed on the Play Store. It’s a space exploration game with high quality 2D graphics and addictive music that provide hours of fun. Spread over seven planets with 40 levels each, you must clear 280 levels, solve mind-boggling puzzles.

    The game starts with a small story where Tim loses his way to Earth in space, which gives us the opportunity to guide him in reaching Earth by travelling through seven planets. The game is developed in Free-to-Play model with IAPs and ads integrated. The source code will allow you change the game revenue model as per your interest.

    The game consists of two leaderboards and few achievements to boost player’s competitive spirit. We have received very good rating on the Play Store. You can check few other reviews from app review professionals.

    Reviews:-http://www.askyourandroid.com/games/tim-the-traveler-android-game-app-review/ (Ask Your Android)-http://reviewtheapps.com/tim-traveler-astronauts-exciting-space-journey-puzzle-game/-http://gamereviews.co.in/tim-traveller-android-game-review/

    YouTube Reviews:

    English-https://www.youtube.com/watch?v=HQfjlJ_B_wshttps://www.youtube.com/watch?v=x9OGGrLpFicHindi-https://www.youtube.com/watch?v=9m7gWht1oqc&feature=youtu.be

    We request you to spend some of your precious time to check the game’s short gameplay – youtube.com/watch and its trailer – youtube.com/watch

    We have fixed all of the game bugs and increased its performance in the last update. The source code will allow you to export the game to iOS, Android, PC, Mac, Unbuntu and HTML. We are happy to transfer you the whole owner rights of the game.

    We hope you will like our app and will get into business.

    We are happy to answer all of your questions.

    Have a great day!

    Thanks,Sudeep

    Features

    InHouse made graphics, music and puzzles. All the graphics, backgrounds musics and sound effects, and puzzle designs are developed by the studio. Nothing was purchased from Royalty Free Websites.

    The game contains seven different gameplays with seven different graphics, seven different bgms and sound effects, and seven different puzzle genres.

    Tagged:

  • You do not have permission to view this post

  • lennaert

    Perfect! You are right. I have made those changes and added the bullet behaviour as inputs. The game works a desired now.

    Thanks alot. :)

  • Thanks alot for looking into this.

    It's my error, I should have explained more clearly.

    The peer should be created at (768, 1548) but it is being created at (0,0) and it freezes. It doesn't move like it the host. Peer functions just like the host but for some reason it is not happening in that way.

    Please let me know if you need more detailed explanation.

  • dop2000 Will you be able to you help me on this?

    Thanks in advance.

  • Gonna need you to post your file captain

    Oops! Here you go drive.google.com/file/d/1UJIOhRcpdYE-ZVxueC6tSjzjxoSdoWau/view

  • Hi,

    I've been working on a multiplayer game. I followed the instructions in the pong multiplayer that comes with the scirra sample projects. I was able to establish the connection between Host and Peer, and host is displayed on the Peer side but the Peer is being created at (0,0) instead of the defined area.

    Looks like Peer is not able to sync to Host or the host is not updating the sync values properly. I'm not sure where it went wrong. Can you please check the code and help me with it?

    Please check the gameplay for better understanding -

    Subscribe to Construct videos now

    Thanks in advance. Please let me know if you need any further information.

    [Multiplayer]

    ----+ System: GamePlay = "multi"

    --------[Signalling]

    // On start of layout, connect to the signalling server. We also set up which client input values the peers will be using, and sync the Peer object with its position and additional instance variables for the look position, current inputs and player stats.

    ------------+ System: On start of layout

    -------------> Multiplayer: Add client input value tag "x", precision Low (int16, 2 bytes), interpolation None

    -------------> Multiplayer: Add client input value tag "y", precision Low (int16, 2 bytes), interpolation None

    -------------> Multiplayer: Add client input value tag "points", precision Low (int16, 2 bytes), interpolation None

    -------------> Multiplayer: Add client input value tag "player", precision Low (int16, 2 bytes), interpolation None

    -------------> Multiplayer: Sync Creators (with Position only, precision Low (int16, 2 bytes) at Normal bandwidth (unpredictable))

    -------------> Multiplayer: Sync Creators variable Points (precision Low (int16, 2 bytes), interpolation: None, client value tag: "points")

    -------------> Multiplayer: Sync Creators variable Player (precision Low (int16, 2 bytes), interpolation: None, client value tag: "player")

    -------------> Multiplayer: Connect to signalling server "wss://multiplayer.scirra.com"

    // When connected, request to log in.

    ------------+ Multiplayer: On signalling connected

    -------------> Multiplayer: Log in with alias "Sud"

    -------------> TextCoins: Set text to "Connected to server"

    // When logged in, request to join the room. Use auto-join to assign pairs of players in to separate rooms.

    ------------+ Multiplayer: On signalling logged in

    -------------> Multiplayer: Auto-join from room ROOM_NAME for game GAME_NAME instance INSTANCE_NAME (max peers: 2, lock when full)

    -------------> TextCoins: Set text to "Logged in with alias: " & Multiplayer.MyAlias & " (" & Multiplayer.MyID & ")" & newline & "Joining room..."

    // We joined the room: activate either the Host or the Peer group.

    ------------+ Multiplayer: On signalling joined room

    // As the host, we also adopt the existing paddle object on the left of the layout as our own. We must set its peer ID to our own ID and tell the Multiplayer object it is associated with ourselves.

    ----------------+ Multiplayer: Is host

    -----------------> TextCoins: Set text to "Joined Room as Host"

    -----------------> System: Set group "Host" Activated

    -----------------> Creators: Set peerid to Multiplayer.MyID

    -----------------> Multiplayer: Associate Creators with peer Multiplayer.MyID

    // When not the host, the paddle object already in the layout is destroyed. 'Sync object' will create both paddles, and they'll be associated with the correct player using the 'On created' trigger in the 'Peer' group. Also since the game is 2-player, it can begin as soon as the peer joins since we know the host is already there, so update the game state to "getready".

    ----------------+ System: Else

    -----------------> TextCoins: Set text to "Joined Room as Guest"

    -----------------> System: Set group "Peer" Activated

    -----------------> Creators: Destroy

    -----------------> System: Set GameState to "getready"

    ------------+ Multiplayer: On signalling disconnected

    -------------> TextCoins: Set text to "Disconned from Signalling"

    ------------+ Multiplayer: On signalling error

    -------------> TextCoins: Set text to "Signalling Error: " & Multiplayer.ErrorMessage

    ------------+ Multiplayer: On signalling left room

    -------------> TextCoins: Set text to "Partner left the room"

    ------------+ Multiplayer: On kicked

    -------------> TextCoins: Set text to "Kicked (either could not connect to host or host quit)"

    --------[Game]

    ------------[Peer]

    // When a Peer is created from 'Sync object', Multiplayer.PeerID has the ID of the peer that the object represents. This must be stored in an instance variable so we can later identify which peer the object represents.

    ----------------+ Creators: On created

    -----------------> Creators: Set peerid to Multiplayer.PeerID

    -----------------> Multiplayer: Associate Creators with peer Multiplayer.PeerID

    --------------------+ Creators: peerid = 1

    ---------------------> Creators: Set animation frame to 1

    --------------------+ Creators: peerid = 2

    ---------------------> Creators: Set animation frame to 2

    --------------------+ Creators: peerid = 3

    ---------------------> Creators: Set animation frame to 3

    --------------------+ Creators: peerid = 4

    ---------------------> Creators: Set animation frame to 4

    --------------------+ Creators: peerid = 5

    ---------------------> Creators: Set animation frame to 5

    ----------------+ [DISABLED] Creators: peerid = Multiplayer.MyID

    -----------------> [DISABLED] Multiplayer: Enable local input prediction for Creators

    ----------------+ Multiplayer: On client update

    ----------------+ [DISABLED] Creators: peerid = Multiplayer.MyID

    -----------------> Multiplayer: Set client input state "player" to value Creators.Player

    -----------------> Multiplayer: Set client input state "points" to value Creators.Points

    -----------------> Multiplayer: Set client input state "x" to value Creators.X

    -----------------> Multiplayer: Set client input state "y" to value Creators.Y

    // If the host indicates that the game state has changed, update the GameState global variable. The 'Common' group changes the display when this changes.

    ----------------+ Multiplayer: On peer message "gamestate-changed"

    -----------------> System: Set GameState to Multiplayer.Message

    ------------[Host]

    // As the host, when a peer joins we create a new paddle for them on the right. 'Sync object' will cause it to be created for the peer too. We also begin the game: we set the state to "getready" for 3 seconds, then upon "go" we set the ball moving and 1 second later set the state to "started" (so the score appears instead of "GO!").

    ----------------+ Multiplayer: On peer connected

    -----------------> System: Create object Creators on layer "Player" at (LayoutWidth÷2, LayoutHeight - 500)

    -----------------> Creators: Set peerid to Multiplayer.PeerID

    -----------------> Multiplayer: Associate Creators with peer Multiplayer.PeerID

    -----------------> Functions: Call SetGameState (state: "getready")

    -----------------> System: Wait 4 seconds

    -----------------> Functions: Call SetGameState (state: "go")

    -----------------> System: Wait 1 seconds

    -----------------> Functions: Call SetGameState (state: "started")

    ----------------* On function 'SetGameState'

    ----------------* Parameter 'state' (String)

    -----------------> System: Set GameState to state

    -----------------> Multiplayer: Broadcast tag "gamestate-changed" message GameState (from "", mode Reliable ordered)

    // There is only one other peer in the game, and we keep them positioned at the peer's "y" input, which is the Y position of their mouse.

    ----------------+ Creators: peerid ≠ Multiplayer.MyID

    -----------------> Creators: Set X to Multiplayer.PeerState(Creators.peerid, "x")

    -----------------> Creators: Set Y to Multiplayer.PeerState(Creators.peerid, "y")

    -----------------> Creators: Set Points to Multiplayer.PeerState(Creators.peerid, "points")

    -----------------> Creators: Set Player to Multiplayer.PeerState(Creators.peerid, "player")

    -----------------> TextCoins: Set text to Multiplayer.PeerState(Creators.peerid, "x") & " " & Multiplayer.PeerState(Creators.peerid, "y")

    ----------------+ Touch: On any touch start

    -----------------> System: Create object IconFingerPrint on layer "Player" at (Touch.X, Touch.Y)

    -----------------> IconFingerPrint: Set Sine Disabled

    -----------------> System: Create object IconDeflector on layer "Player" at (Touch.X, Touch.Y)

    -----------------> IconFingerPrint: Set size to (358, 512)

    -----------------> IconFingerPrint: Set opacity to 100

    ----------------+ Touch: On any touch end

    -----------------> IconFingerPrint: Destroy

    -----------------> IconDeflector: Destroy

    ----------------+ Creators: On collision with IconDeflector

    --------------------+ Creators: peerid = Multiplayer.HostID

    ---------------------> Creators: Add 1 to Points

    ---------------------> System: Add 20 to BallSpeed

    ---------------------> Creators: Set Bullet speed to BallSpeed

    --------------------+ Creators: [X] peerid = Multiplayer.HostID

    ---------------------> Creators: Add 1 to Points

    ---------------------> System: Add 20 to BallSpeed

    ---------------------> Creators: Set Bullet speed to BallSpeed

    --------[Common]

    ------------+ System: GameState = "getready"

    ----------------+ System: Game = "No"

    --------------------+ System: Every 1 seconds

    --------------------+ System: Score > 0

    ---------------------> System: Set Score to Score - 1

    ---------------------> TextDynamic: Set text to Score

    --------------------+ System: Score ≤ 1

    ------------------------+ System: Every tick

    ----------------------------+ Creators: peerid = Multiplayer.HostID

    -----------------------------> Creators: Set position to (lerp(Creators.X, 768, 0.1), lerp(Creators.Y, 924, 0.1))

    ----------------------------+ Creators: peerid ≠ Multiplayer.HostID

    -----------------------------> Creators: Set position to (lerp(Creators.X, 768, 0.1), lerp(Creators.Y, 1124, 0.1))

    ----------------------------+ Creators: Height ≥ 300

    ----------------------------+ Creators: Width ≥ 300

    -----------------------------> Creators: Set size to (Creators.Width - 15, Creators.Height - 15)

    --------------------+ System: Score = 0

    ---------------------> System: Set Game to "Yes"

    ---------------------> System: Set BallSpeed to 100

    ---------------------> System: Wait 1.0 seconds

    ---------------------> Creators: Set Bullet Enabled

    ---------------------> Creators: Set Bullet bounce off solids True

    ---------------------> Creators: Set Bullet speed to BallSpeed

    ---------------------> Creators: Set Bullet angle of motion to random(360) degrees

    ------------+ System: GameState = "go"

    -------------> [DISABLED] Creators: Set Bullet Enabled

    -------------> [DISABLED] Creators: Set Bullet bounce off solids True

    -------------> [DISABLED] Creators: Set Bullet speed to BallSpeed

    -------------> [DISABLED] Creators: Set Bullet angle of motion to random(360) degrees

    ------------+ System: GameState = "started"

    ----------------+ Creators: peerid = Multiplayer.HostID

    -----------------> TextDynamic: Set text to Creators.Points

    ----------------+ Creators: [X] peerid = Multiplayer.HostID

    -----------------> TextDynamic: Set text to Creators.Points

    Tagged:

  • Kyatric Thanks for the tip.

    I will see whether there is way to do it.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • these json are for Adobe after effects.

    you can try this library but it uses svg not canvas.

    https://github.com/icons8/titanic

    Oh I see. Thank you for your response.

    Any tips on how to use them?