Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.
|
Forum Index : Microcontroller and PC projects : PETSCII ROBOTSfor PICOMITE beta
Page 4 of 4 | |||||
Author | Message | ||||
Volhout Guru Joined: 05/03/2018 Location: NetherlandsPosts: 4239 |
Hi Tom, Thanks for helping out. I fixed the 2 bugs you mentioned (rollerbot firing under EMP, player visible over map) in this version. Since I knew what to do it was only 10 minutes. Now I am off to bed again.. pet25m_bf.zip Volhout PicomiteVGA PETSCII ROBOTS |
||||
Mixtel90 Guru Joined: 05/10/2019 Location: United KingdomPosts: 6797 |
Get well soon, Volhout. This is the wrong time of year to be poorly! :( Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
Bleep Guru Joined: 09/01/2022 Location: United KingdomPosts: 509 |
Hi Everyone, Firstly, get well soon Martin and Harm. Secondly, Tom, you changed the function name for the Wii to Function ctrl_wii_classic$(init%) an extra under score, however you didn't change the return name, so you need to change the return name here. End Select EndIf ctrl_wii_classic$ = s$ Exit Function Otherwise your and Harms changes look to be fine. The key mapping I used, was simply for my own purposes, if you wan to make them like the SNES then fine, it just seemed to me if you have the extra controls, you might as well use them. Regards, Kevin. |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4040 |
And from me too. Hi Kevin, Ack, thanks for catching that. I changed the name for consistency with other work I have done for controller support on the CMM2. Indeed ... but you actually use two fewer buttons than the SNES controller . I think one of the aims of the control scheme is to allow the player to "easily" move in one direction whilst shooting in another direction, hence the SNES mapping puts the four fire-directions on ABXY. This is not so easy to implement with the NES controller. Best wishes, Tom Edited 2023-12-07 22:09 by thwill Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
Bleep Guru Joined: 09/01/2022 Location: United KingdomPosts: 509 |
By using one of the joy sticks for player movement and the 4 direction cursor control for shooting, you can move and shoot with my mapping already. I was also wondering about allowing the shooting to auto repeat, I don't know whether the original version allowed this or not? Regards, Kevin. |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4040 |
Ah, yes, I overlooked the analog stick. I had the same thought about enabling that. I really want to have a deep dive on the keyboard/controller repetition and flushing behaviour. At the moment the code is liberally sprinkled with calls to kill_kb() - which reads and discards keyboard/controller input until there is none - and I wonder if a slightly more context sensitive implementation of read_input$() would allow us to do away with this. Best wishes, Tom Edited 2023-12-07 22:41 by thwill Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
Volhout Guru Joined: 05/03/2018 Location: NetherlandsPosts: 4239 |
Hi Tom, kill_kb() is only used where repeated pressing of (especially the controller-) keys causes the game to malfunction. So there where not many of them in the actual game. - In the selection menu's (everywhere) - In the MOVE ITEM action. Due to combined keys on controllers this has become more critical. what you could do is change the read_input$() to accept a parameter where read_input$(0) would wait for old key release, and respond with the new key pressed or would kill_kb(), and then read the key and return it. read_input$(1) would immediately respond with key (incl autorepeat). But in the main loop there is only one key entry (except when leaving with ESC). And this key entry is used throughout the game. Hence the local "kill_kb" to make sure the next key is really pressed, and not a remainder of earlier repeats. Maybe you could leave it as is. This (more or less) works. And you can sprinkle a few more kill_kb()'s around for the controllers. Even IF GameMite THEN kill_kb(). Regards, Volhout P.S. I found a bug (far) more difficult to fix. When you shoot plasma at a wall it shows visual explosions, also on the other side of the wall. This is in line with the DOS game. But the DOS game does not actually do damage to items/units on the other side of the wall. Our game does. I need to find a way to solve this with minimal time impact. Because we are currently at 95% loop time. The controller changes have also had some impact. But that was to be expected. Adding functionality costs CPU cycles. P.P.S. Tom, did you see the first code line "OPTION DEFAULT INTEGER" ? You can remove some 100 times a "%" sign in your code pieces. Not needed. Only when you use floats you need to "!". Maybe a find-replace in MMEDIT will work. Edited 2023-12-08 01:02 by Volhout PicomiteVGA PETSCII ROBOTS |
||||
Bleep Guru Joined: 09/01/2022 Location: United KingdomPosts: 509 |
I'm old school so always have :- Option EXPLICIT Option DEFAULT NONE so you have to declare every variable before you use it, so doing away with %,!,$ etc. :-) Regards, Kevin. |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4040 |
Hi Harm, Yes, I didn't intend to say I could do better, just that I'd like to investigate whether it is possible to do better. Also won't kill_kb() pause the game indefinitely if a button is held down, we can live with that but it's a little odd. Is there some trick with the ordering of the tiles, i.e. are all the "outside" tiles in a particular range ? In which case if the player is standing on a floor tile and the potential explosion tile is in the "outside range" then don't apply the explosion on that tile. Just a habit, easily fixed, all my own code uses OPTION DEFAULT NONE. I would have said that is "new school" not "old school" and I do the same, however your final statement is incomplete, you only do away with %, !, $ if you use a VB style declaration, i.e. ... AS INTEGER|FLOAT|STRING, which is very verbose in FUNCTION/SUB parameter lists and a problem in MMBasic which doesn't have line-continuation. Best wishes, Tom Edited 2023-12-08 03:03 by thwill Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
Volhout Guru Joined: 05/03/2018 Location: NetherlandsPosts: 4239 |
All, To fix the issue with plasma damage through walls, the shooting direction is embedded in the damage dealing now. This may have side effects that I missed. Especially for testing the F3 cheat key is back. pet25n.zip I hope I killed nothing, because I touched 8 or 9 routines that interact. Regards, Volhout P.S. the one "feature" that still exists is that when you place a time bomb directly against the wall, it will damage 1 tile in the other room. You can use it to your advantage to kill the evilbot with 8 time bombs from outside the room... this is something I will probably not fix since it requires another "search" algorithms and these cost lots of time. The plasma fix did not cost loop time, it made use of information was already available, only use it smarter. Edited 2023-12-08 05:51 by Volhout PicomiteVGA PETSCII ROBOTS |
||||
Martin H. Guru Joined: 04/06/2022 Location: GermanyPosts: 1113 |
there is a difference between the difficulty level map 1 PC Version: If I look for the rocket I get 100 bullets but in easy mode I get 200 bullets, the number of other hidden items is also doubled. I haven't found the responsible part in the source yet 'no comment |
||||
Volhout Guru Joined: 05/03/2018 Location: NetherlandsPosts: 4239 |
Hi Martin, On VGA using PS2 keyboard I get 100. Are you using Game*Mite ? Maybe key bounce ? Is strange though. You have clicked so fast that the hidden item is not yet removed from the lander, before you clicked again. May have somthing to do with the animation that lasts 2 seconds... I will try to reproduce... Volhout P.S. does it also happen if you search the lander from another direction ? Maybe a unfortunate key combination on the game*mite ? Edited 2023-12-09 01:27 by Volhout PicomiteVGA PETSCII ROBOTS |
||||
Martin H. Guru Joined: 04/06/2022 Location: GermanyPosts: 1113 |
as I wrote.. PC Version This does not happen on the Pico Version but seems to be a part of the Level System on the PC/Amiga/c64 Version. So there must be a routine which sets the number of the Items Higher depending on the Difficulty level Edited 2023-12-09 01:54 by Martin H. 'no comment |
||||
Volhout Guru Joined: 05/03/2018 Location: NetherlandsPosts: 4239 |
Ah, good to know.... We can implement that also... When there are more differences, please let me know. Volhout PicomiteVGA PETSCII ROBOTS |
||||
Martin H. Guru Joined: 04/06/2022 Location: GermanyPosts: 1113 |
I will, However, I'm still not fit again. I'm starting to get the feeling that we should distribute the program as it is, before it is fragmented beyond recognition by more and more "optimizations". Then one can lower it even further, add wide tires and add an additional front and rear spoiler as he wish The program gets more out of the Pico than any of us would have expected, and does it very well Controller for Game*Mite and PiGame (with NES Controller) or just Keyboard support should be enough for the Start. Edited 2023-12-09 03:45 by Martin H. 'no comment |
||||
Volhout Guru Joined: 05/03/2018 Location: NetherlandsPosts: 4239 |
All, It was our target to use this thread to remove the game play issues from the game, so it could be released as a VGA-keyboard version. In the original PICO PETSCII thread we would continue to play with the program to support as many as possible controllers and LCD's to suit anyone's needs. We think this thread has fulfilled its duty, and I plan to go to RC for the VGA-keyboard version end this weekend. We thank you all for bringing up any noncompliance, and ideas. The RC (release candidate) will lead to the version to send to David Murray. Hopefully it will coincide with an official V5.08.00 release from Peter. In the mean time, We will support development in the PICO PETSCII thread, so it can continue to support as many as possible platforms. Additional interfaces is always nice to have, game mechanisms will not change anymore, so I hope as many as possible people can enjoy the puzzles in the game thanks to your efforts and dedication. Thank you all, Martin_H Volhout Edited 2023-12-09 08:36 by Volhout PicomiteVGA PETSCII ROBOTS |
||||
Page 4 of 4 |
Print this page |