|
|
|
|
| Welcome, Guest | Home | Search | Login | Register | |
| Author | Speaking of robot games and programming projects... (Read 13799 times) | ||||||||||||||||||||||||||||||||||||||||||
|
lauland
512 MB ![]() ![]() ![]() ![]() ![]() Posts: 674 Symtes 7 Mewconer! |
on: December 12, 2024, 18:17
https://github.com/laulandn/PETSCIIRobotsMac https://tinkerdifferent.com/ https://macintoshgarden.org/forum/the-petscii-robot-challenge As you can see, I got quite far and did the heavy lifting of getting it going. Ideal project for learning Mac game programming... In fear of being pedantic and probably quite a bit irritating at this point, but will say again: Would be a great group project. I would be overjoyed to guide and/or mentor. I know it may be hard for some to understand why I didn't just finish it myself, but it wouldn't cover any new ground for me. And is a virtual crime people aren't playing this thing on Mac Plus's out there! I hope I don't come across as heavy handed. What I'm really trying to do is "lead the horse to water" or "teach a man to fish", (and other English language idioms) etc. Take a look at the parts of the code that are "#ifdef _MAC"...like in SDL_BlitSurface() in PlatformSDL.cpp where I'm stumbling around trying to remember how to handle PixMaps on Carbon...I'm only human. |
||||||||||||||||||||||||||||||||||||||||||
Last Edit: December 13, 2024, 08:36 by Bolkonskij
|
cballero
|
1024 MB ![]() ![]() ![]() ![]() ![]() ![]() Posts: 1176 System 7, today and forever
Reply #1 on: December 13, 2024, 03:18
|
You are a huge inspiration to us all, Lauland! sadly, I am so not a programmer (HTML, and light JavaScript, coder, yes) as I get bogged-down by the simplest coding routines; all part of my limitations but it doesn't stop me from lauding our programming heroes, many of which hang out here at the S7T forums!
|
Bolkonskij
|
Administrator 1024 MB ![]() ![]() ![]() ![]() ![]() Posts: 2023
Reply #2 on: December 13, 2024, 08:35
|
Ack, I'm on Mac OS and I can't download the archive from Github. Any chance you'd put it onto the amend repo or as a sit someplace? I'm willing to give this a try, have a look to see if I get where it is at and try to build it on my Mini.
|
cballero
|
1024 MB ![]() ![]() ![]() ![]() ![]() ![]() Posts: 1176 System 7, today and forever
Reply #3 on: December 13, 2024, 13:23
|
@Bolkonskij: here's an IA http link to the main.zip file of Lauland's first URL and the resulting zip file link it actually downloaded
|
cballero
|
1024 MB ![]() ![]() ![]() ![]() ![]() ![]() Posts: 1176 System 7, today and forever
Reply #4 on: December 13, 2024, 14:43
|
Wonderfully, my 68k Mac opened an IA link of the Think Different PETSCII Robots thread link using iCab, including forum avatars and screenshots!
|
lauland
|
512 MB ![]() ![]() ![]() ![]() ![]() Posts: 674 Symtes 7 Mewconer!
Reply #5 on: December 13, 2024, 16:49
|
Yikes! I apologize for not providing a more Mac friendly way to get the source. Didn't actually expect anyone to try... @cballero That was a genius move of using IA! I've been thinking I should create an MG page and just put up what there is out there for curious eyeballs to see, who knows what might happen? There are included project files for CW Pro 6 and 7 and XCode 2, to build for MacOS classic (m68k, ppc, and carbon), and Tiger (carbon) targets, respectively. (I believe my saying "Builds with CodeWarrior Pro 6 and 8" was a typo?) It will likely run/build on other close versions. The app must be in the same folder as the assets (which is why there are dups). All The 8-Bit Guy's code is still there in place, my additions are #ifdef _MAC'd. The mind bogglingly kludgey "raw" format assets were to avoid having to include code to decode png images like libpng or something similar. (Wanted to eventually run on a Mac Plus).
Last Edit: December 13, 2024, 20:53 by lauland
|
Bolkonskij
|
Administrator 1024 MB ![]() ![]() ![]() ![]() ![]() Posts: 2023
Reply #6 on: December 14, 2024, 15:11
|
@cballero the idea of using the IA as a "proxy" to access the page is great. Unfortunately, it doesn't work for me. Either of your links throws a 503 error. Might be temporarily though. @lauland Well, I'm interested in seeing the code and if I understand what's going on. You wrote about what's missing, like the keystroke detection and in my head I already start forming an appropiate switch statement. I had been wanting to invest more time into programming Mac OS but my free time for it is getting severly limited. As you know, I run Cornica and my Cheat Emporium in addition to being an admin here on System 7 Today and over at Mac OS 9 Lives. I'm also trying to support the few developers left, I'm doing a localization of Macintosh software into German (more on that in another thread). But my day only has so many hours and I feel overwhelmed by what I'd like to DO in our lovely little community and what I realistically can manage. That said, I think your offer is very generous and should give somebody with novice skills the mentoring that he/she needs to become an advanced Mac OS programmer - in other words, the next step up after reading and completing a book like "C on the Macintosh". It is very tempting for me, especially since I've dropped out of programming in terms of a day job and I do miss it somewhat. But I don't want to make a promise and fail to deliver on it - and that is what actually holds me back, not the task itself. Because I know that with your help we could make it happen. So if somebody else feels like this would be a wonderful project, please go ahead. I really want to encourage other people to do it and bring us wonderful new software for our Macintosh. This is the chance, I can't think of anyone better than lauland helping you to hone your Mac OS dev skills.
Last Edit: December 14, 2024, 15:19 by Bolkonskij
|
lauland
|
512 MB ![]() ![]() ![]() ![]() ![]() Posts: 674 Symtes 7 Mewconer!
Reply #7 on: December 15, 2024, 04:33
|
It's all good. I just figured it'd been almost a year, and there was talk about another kinda/sorta/but-not-really similar "robot" game, I might as well put it out there again. FYI Most of the missing stuff I left purposely, as learning opportunities for people. Things like fixing the palette or clearing rectangles especially! The keypresses are one of the few things that I actually didn't figure out or already know how it should be done, they really SHOULD be working (they do in the menu, just not in the game itself)! It's probably something stupid I didn't quite get (to avoid key repeats?), or I'm just passing the keycode back in the wrong place, etc. ---- Another point I kind of want to stress: If someone wants to learn, they should do this INSTEAD of reading a book like "C on the Macintosh". It's a "learn by doing" opportunity. Like I don't need to really understand GWorlds or Pixmaps (just picking randomly) to use them, and when I HAVE read about them in books it is BORING and there's so much I'll never need or use. I was talking about (human) languages in another thread and this dovetails nicely: I learned Spanish in the classroom, but French on the streets of Quebec (and grew up in Cajun country USA). My grasp of the two, and how I approach them is so different because I had to really USE my French in real life. (And I used it as I learned it). If you asked me to conjugate verbs in the two languages, I can do it well in Spanish, but French? Ql bd de md! I just "know" how since I learned whole sentences and phrases as they were needed. ---- I think I should have made this point more strongly before! I don't want to actually teach anyone programming, but instead guide them in picking up the "idioms", what needs to be done to actually have things work. Did I actually even read the PETSCII Robots code before I started? Nope! I first just fixed the errors when it wouldn't compile, and then started adding Mac programming "phrases" and "idioms" like opening a window and the event loop completely on the fly, where they looked like they belonged. It's like playing the guitar...you can just learn where to put your fingers so you can play your favorite song...OR you can read a book about music theory, learn ALL of chords, what notes make them up, and why/how they work together...you absolutely do NOT need to know WHY something works to DO it. So...someone does not need to know ANY Macintosh or game programming at all to contribute. They'd pick it up as a byproduct of just trying things. Would they be doing things the right way or correctly? Who cares, especially in 2024, as long as it works! ---- Ha! I guess you could say I learned Mac programming "on the streets"! And my Spanish is "correct", but my French I "just do it".
Last Edit: December 15, 2024, 04:47 by lauland
|
cballero
|
1024 MB ![]() ![]() ![]() ![]() ![]() ![]() Posts: 1176 System 7, today and forever
Reply #8 on: December 15, 2024, 04:54
|
I love your replies, Lauland! I remember my Pascal and BASIC semester class used simple programs to teach concepts, giving us a view into a very few of the many possibilities of the code we were manipulating in the computer labs. It’s a great approach to learn for sure! It’s been ages, and the things I learnt many decades ago, seem so distant to me now, and I’m talking about a one semester class! I’m a lot closer to connecting some systems remotely, which I hope will make it easier to do joint projects, fingers crossed!
|
lauland
|
512 MB ![]() ![]() ![]() ![]() ![]() Posts: 674 Symtes 7 Mewconer!
Reply #9 on: December 15, 2024, 05:33
|
I do believe I am in danger of "oversharing" with my EXTREMELY wordy replies. Do all please feel free to tell me to reign myself in, or, at least "please don't type so much and you don't have to reply to EVERY post!".
|
Bolkonskij
|
Administrator 1024 MB ![]() ![]() ![]() ![]() ![]() Posts: 2023
Reply #10 on: December 15, 2024, 10:44
|
@lauland, quite the opposite. Please keep elaborating in detail what your thoughts are. You're adding a unique perspective and as @cballero said, we all love your (long) replies. See this as an encouragement to go on, please :-) I think you're right about different ways of learning as illustrated by your language example. I wasn't recommending that you *have* to go through "C on the Macintosh" and the likes first, although I personally would still recommend it. Because it gives you a good basic idea about how the Mac (Toolbox) works and how C in general works without going into too much detail. The problem with these books is usually that the interested beginner goes through them and after finishing all the programming examples is hungry for more - but there isn't anything to follow-up. He/she isn't ready to write a full app from the ground up, but could apply their knowledge about QuickDraw routines and nested If clauses on a real project by writing a specific component. And I know that a lot of people drop out at this point. So I assumed your offer would be the perfect next step. But what do I know? Maybe somebody who hasn't written a line of Mac code before will be able to pick it up much faster this way. :-)
|
|
Pages: [1]
|
| |||||||||||
|
© 2021 System7Today.com. |


sadly, I am so not a programmer (HTML, and light JavaScript, coder, yes) as I get bogged-down by the simplest coding routines; all part of my limitations
but it doesn't stop me from lauding our programming heroes, many of which hang out here at the S7T forums!

