11 August 2021, 10:47 | #1161 |
Registered User
Join Date: Apr 2021
Location: FRANCE
Posts: 93
|
@Earok, ahaahah yes, the graphics are from the Wii version,
for the AmigameJam, maybe if my friend Troudki (ZTEAM) wants to work with me on it, because I have to work on Maria's level 2... |
11 August 2021, 12:35 | #1162 | |
Registered User
Join Date: Apr 2019
Location: UK
Posts: 300
|
Quote:
From testing cpu_path with scrolling it breaks after adding more than 2 paths, but that can be fixed by going in Tiled and selecting the paths and converting them to polygon (even if you did this prior). Also sometimes the cpu_path area just needs to be nudged a few pixels in Tiled before it is recognised in game. |
|
11 August 2021, 13:44 | #1163 | |
Registered User
Join Date: Jun 2020
Location: Leeds, UK
Posts: 770
|
Quote:
Also another odd bug(?) when I'm standing on a "platform" actor I can't duck unless i do it diagonally. (i think because I have a "isonplatform" check so i cant duck in mid air.. But platform actor doesnt register as being onplatform, I guess?) but that might be because my platform actors are in a buggy state atm. |
|
11 August 2021, 13:58 | #1164 |
Registered User
Join Date: Jul 2018
Location: Scotland
Posts: 821
|
Keeping with the platform vibe
I scrapped using cpu_path for platform actors and used on spawn with codeblocks to move my "lift" actor. The platform indeed moves fine but despite set as platform I am still falling through, once its moving. Platform is fine and solid if not moving and static. |
11 August 2021, 14:56 | #1165 | |
Registered User
Join Date: Apr 2019
Location: UK
Posts: 300
|
Quote:
|
|
11 August 2021, 15:06 | #1166 |
Registered User
Join Date: Jun 2020
Location: Leeds, UK
Posts: 770
|
I used that method for my bouncy sewer lifts too..
I'll probably use something other than CPU_path for these snails in the end.. Their similar (but non-platform) slugs use Cpu_stayonplatform.. If they had predictable range i'd use cpu_wave, but they have really variable patrol areas. What could be kind of useful are "can go up ramps" and "can go down ramps" tick boxes, though I doubt that'd be possible, but if CPU_stayonplatform could be told do bounce off ramps that would make for a bit more control over specific actors. And having a rock you can push down hills but not up hills would be great too. Ooohh, I'll try this now! (i had them appearing in the right place according to tiled, but hadn't tried adding the events in scorpion! ed: nope didn't do anything.) Last edited by Mixel; 11 August 2021 at 15:27. |
11 August 2021, 15:08 | #1167 |
Registered User
Join Date: Dec 2013
Location: Auckland
Posts: 3,539
|
Started working on path stuff and fixed a few bugs but there's a few unexpected quirks to work around.. may be a couple of days before any updates.
@acidbottle - part of the problem it seems is platforms faster than 1 or so have bugs, the platforms you've got run at 1.5 |
12 August 2021, 15:00 | #1168 |
aka (Cpt)JohnArcher
Join Date: May 2018
Location: Dresden / Germany
Posts: 193
|
Hi there!
I am having a more serious "look" on Scorpion currently and wanted to re-create the prototype I created 2 years ago with Hollywood. It is essential for me to start a timer in a codeblock. So, if a variable has a specifiv value, I would like to start a timer which specific time (in milliseconds?) is taken from another variable. The time mustn't be blocking the game, so keypresses (like fire button) should be still recognized and could be evaluted while the timer is still running. Is that possible via a codeblock? I haven't figured it yet how or if this is possible. Thanks a lot in advance! Once you understand how Scorpion works it is realy fun. Still learning a lot, just scratched the surface! This video ( [ Show youtube player ]) was essential to me, because when I first opened Scorpion I was a bit overwhelmed ... ;-) But the video helped to get a basic understanding. So, thanks for all! |
12 August 2021, 15:08 | #1169 |
Registered User
Join Date: Dec 2013
Location: Auckland
Posts: 3,539
|
Hey Clydos!
Yes, the "yield" function does exactly that. I think in the latest experimental version of Scorpion, you can tell yield to take it's value from a variable rather than a hard coded number. If you're using an older version, you should be able to achieve the same by simply setting the "yield" variable. |
12 August 2021, 15:19 | #1170 |
Registered User
Join Date: Jun 2020
Location: Leeds, UK
Posts: 770
|
Hi Clydos! what Earok said.. I have a timer like this..
in my game there’s a skull thing that spawns and chases you around when a variable runs out, and it’s set to different durations depending on the level being played. You can have the timer count up/down with a YEILD of 1 second or whatever then at the end of the codeblock send it back to the start of the codeblock.. Then you can Goto said counter codeblock from the end of your “level start” routine, and it’ll keep looping in the background. There are probably other ways of doing it too. (and it might not be the best way) but it’s what I do for level timer anyway. |
12 August 2021, 23:59 | #1171 |
aka (Cpt)JohnArcher
Join Date: May 2018
Location: Dresden / Germany
Posts: 193
|
Thank you both, earok and Mixel! I think basically I got it working.
@earok: I tried the latest experimental build but yield still needs a hard coded frame number. @Mixel: "send it back to the start of the codeblock" works with "Gosub -> NAME OF MY TIMER CODEBLOCK"? At least that seems to work. Another question (sorry, if this and others were already asked - I use the forum search function but I don't always get desired hits or there are too many): Is it possible to display simple text/message somewhere on the screen? This could be used for debugging (showing the value of a variable) oder for simple texts like a "Ready" etc. And the last one for now: I would like to _automatically_ and smoothly move my player actor from position x1 to x2. The "player -> push" way works but is there also a way to set a destination x pos like with "player -> setposition" but have a smooth/frame based transition to this position? Also, when I set a certain player animation via code, it is only played once. I would like to play this animation repeatedly (until the actor reaches the x pos). Maybe there is sth that I want in the demos so you could point me to a specific code block in a demo? Thank you! PS: On Twitch and Twitter I am (Cpt)JohnArcher. :-) |
13 August 2021, 10:03 | #1172 |
Registered User
Join Date: Dec 2013
Location: Auckland
Posts: 3,539
|
Experimental check in. There's a lot of little changes here that all add up to something fairly significant. If you use moving platforms OR paths you might want to verify everything still works.
1. All variables in the standard library have been commented. I know it's a little hard to read with how thin the comment field is but I figured it might be useful if someone wasn't sure what any particular one did. 2. New variable - "PlatformSnap". It can only be set directly with the set variable command (may add a specific command for it later). Default is 8 which should be a safe value for most cases (maybe a little too high). It's to fix an issue where gravity and fast moving platforms result in either a player that "falls" through a platform at the bottom of the movement or "bounces" at the top of the movement. Basically it's the maximum number of pixels that a player's position can be corrected to be brought in line with the top of a platform on a frame. 3. Various improvements and optimizations to paths. 4. Paths no longer show up as "events" in the map tab. 5. CPU_Path takes into account the amount of "nudge" when connecting to the path (which is to say, the relative offset between the object and tile). I'm not totally sure but I think this could have been the problem with moving path platforms on Mixel's game. 6. Ultranarwall gave me the idea to set Respawn as the "default" recycle mode for a platform (so that it returns to the place it started from rather than potentially spawning off the path). In hindsight, I probably should revert that and investigate a way to make it so that recycled objects just continue from where they were before rather than right from the start of the path. But this is probably better than nothing for now. --- @clydos - I checked, latest experimental build does have support for variable in yield eg set foo = 100 yield for foo frames Worked. You got experimental from here? https://github.com/earok/scorpion-editor-experimental Last edited by earok; 13 August 2021 at 10:11. |
13 August 2021, 14:08 | #1173 |
Registered User
Join Date: Jul 2018
Location: Scotland
Posts: 821
|
Thanks earok, another top drawer update, platforms at least and paths working like a charm. Your hard work and dedication to this project is much appreciated, it probably motivates us all
I have a wacky glitch, or likely my terrible logic skills at play again .. Have a player char who is walking, then turns into a scrolling fast moving actor when it hits a particular object. I set it so that when this fast, scrolling player/actor hits something he reverts back to walking. Tried player x speed, camera speed x, setting player/actor speeds to zero ... ends up multiplying hopping around the map like a loon and the screen continuously scrolling until i die haha ..... help |
13 August 2021, 14:08 | #1174 | |
Registered User
Join Date: Apr 2019
Location: UK
Posts: 300
|
Quote:
Panels, add an element and set the font and variable to use. For text set the panel talkpad font and select the area used, in a codeblock update the text with print dialogue (panel position). |
|
13 August 2021, 14:17 | #1175 | |
Registered User
Join Date: Apr 2019
Location: UK
Posts: 300
|
Quote:
|
|
13 August 2021, 14:27 | #1176 | |
Pixelglass/Reimagine
Join Date: Jun 2012
Location: Athens
Posts: 1,031
|
Quote:
|
|
13 August 2021, 15:53 | #1177 |
Registered User
Join Date: Jul 2018
Location: Scotland
Posts: 821
|
Thanks guys, working like a charm now!
|
14 August 2021, 13:22 | #1178 |
Registered User
Join Date: Dec 2013
Location: Auckland
Posts: 3,539
|
I really appreciate everyone stepping in to help each other while I'm away in all honestly a lot of the suggestions given for specific problems are better than what I would have thought of.
---- Daily check in: - Player/Actor/Projectile/New "Z" is exposed and can be set from Set Variable. This allows changing the Z Order (and thus what actors are in front of other ones) at run time. Note that I called this "Z" rather than "Z-Order" for forwards compatibility with future control types (eg, if there's ever support added for Zaxxon like games). - Added an error for when YIELD is used after GOSUB as these two commands are essentially incompatible (for the mean time, but I haven't thought of an easy solution). This doesn't happen at compile time, but will happen as soon as it's triggered in the game to draw attention to the issue. It's like this: Scorpion has a stack. If you imagine it like a stack of plates, one plate gets added whenever you GOSUB, and one plate gets removed whenever you RETURN. If you RETURN when there's no plates left (or just let it reach the end of the codeblock), it returns to the game. But if there's plates left when you YIELD, it'll confuse the next codeblock, since the entire game only has one stack. Having multiple stacks would solve this issue but I can't think of how to do it in a memory efficient manner, as such I've forced it to quit with an error instead. |
14 August 2021, 15:42 | #1179 |
Registered User
Join Date: Jun 2020
Location: Leeds, UK
Posts: 770
|
Thanks for all these fixes! The path fixes made everything I’m trying to do work great. Snails operating perfectly!
Codeblock Z order is big deal for a lot of games I think! Excellent! Is there some way to detect isonplatform that will also work when standing on platform actors? I’m not sure why it works when I duck diagonally but doesn’t work when I duck directly downwards when I’m standing on a snail shell, I have duck checks on each of the idle frames. It’s not really important at all though. edit: The "can not yeild after gosub" - I might have done it a million times, not sure.. It crashes out on my intro scroller now, and you basically coded that part, if I'm remembering right. (introcamstart, Introcamdown and funct_introwait) I have a feeling a whole bunch of CMOhn might kick me out of the game now. I'll check through level by level and see what happens. Uh oh.. When I hit into a giant flying beetle it kicks me out with the yeild after gosub error.. I think I'm going to have a looooottt of debugging to do, haha. This might apply to a lot of my enemy collisions.. I.. Huh. Very confusing. Also if I get killed.. This.. Is worrying haha. Apparently I made everything wrong. (edit: so far it seems like it may just be my dying and autoscrolling code causing it, not my collision code - i might be able to fix it all, woop. Nope. I so far haven't been able to figure out how to move my "waits for the skeleton animation to play" before switching control back to the player and teleporting them back to the respawn point" stuff to work without yeilding inside gosubs. Hmm.) Could you make the screen flash red or something instead of kicking out of the game entirely? Ive been working around "confusing the next codeblock" type issues - I thought - pretty well? A lot of my code may even depend on it..? I have null state player actor that stop you from being able to interfere while other things are happening so when it comes back it corrects etc. It also kicks you out when Melody throws the box down the pipe. Hmm. I think I might be in trouble. edit edit: Ooh theres some weird stuff returning at the right hand side of one level now.. I have no idea when it appeared though as its so long since ive played through. (it only seems to happen when you have background parallax stuff? Actually it only seems to happen one one of my levels, the kershaw house one.. Very strange! I'll try to fix it by extending the map and restricting camera.) False Alarm - I had camera restricted from last time this happened it was actually the camera restriction that was causing the glitch.. when I disabled it - it's gone now! Last edited by Mixel; 14 August 2021 at 20:03. |
14 August 2021, 18:02 | #1180 |
Registered User
Join Date: Apr 2019
Location: UK
Posts: 300
|
Possible bug introduced in experimental builds after 1st(?) August, fire input maybe carries across to next level.
Pressing fire to advance text on Duckstroma intro screen causes player to fire instantly on level load, doesn't happen on respawn or if I load straight to level. Fixed by using dummy player with no fire, but thought I'd report. |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
2D Platformer Engine | carrion | Coders. Blitz Basic | 27 | 06 June 2019 14:35 |
New Chaos Engine!! | arpz | Retrogaming General Discussion | 75 | 31 August 2013 22:20 |
F/S Warp engine 32 mb | tabuhuso | MarketPlace | 0 | 24 February 2012 15:13 |
PC Engine CD | TodaysForgotten | Retrogaming General Discussion | 47 | 13 May 2009 23:57 |
Scorpion (100% working) | andreas | request.Old Rare Games | 13 | 01 August 2003 08:48 |
|
|