Stealth-Cancelled
Moderator: MaxCoderz Staff
-
- Sir Posts-A-Lot
- Posts: 245
- Joined: Mon 14 Nov, 2005 9:47 pm
- Location: Getting overwhelmed by everything
- Contact:
Well first off, I do see only 2 downloads on that so far, i thought it would be downloaded faster than that... oh well
onto the news:
Mission 2 has now been planned out and I am currently programming the screens. About half of the stuff in this mission I referenced to Metal Gear Solid (and parodys of it ) and the other half is a bunch of puzzles that some of you might not know, but thats why I'm putting spoilers way down at the bottom of the readme file...
Finally, it looks like ive got to find out how to program each of these boss battles to be entertaining, yet workable, while not exceeding the memory limit (Ive already done at least 3000 bytes worth, and thats just the beginning screen and basic layouts of 2 other screens )
Also, I think I may need a private beta tester to test the bosses on this one to make sure that they are fun and workable (its better to see other points of view than your own ). Any volunteers?
onto the news:
Mission 2 has now been planned out and I am currently programming the screens. About half of the stuff in this mission I referenced to Metal Gear Solid (and parodys of it ) and the other half is a bunch of puzzles that some of you might not know, but thats why I'm putting spoilers way down at the bottom of the readme file...
Finally, it looks like ive got to find out how to program each of these boss battles to be entertaining, yet workable, while not exceeding the memory limit (Ive already done at least 3000 bytes worth, and thats just the beginning screen and basic layouts of 2 other screens )
Also, I think I may need a private beta tester to test the bosses on this one to make sure that they are fun and workable (its better to see other points of view than your own ). Any volunteers?
Last edited by CompWiz on Wed 05 Apr, 2006 2:39 am, edited 1 time in total.
-
- Sir Posts-A-Lot
- Posts: 245
- Joined: Mon 14 Nov, 2005 9:47 pm
- Location: Getting overwhelmed by everything
- Contact:
Ok, well I downloaded it as I have done in the past. I still think it is very fun, and the mine detector was a great addition! So now that is said lets move onto business.
Here are a few optimizations I would like to suggest.
This would make the map loading alot faster. I started to optimize your game, but I got busy with other things..I see you have a map loading engine in each program (S1,S2 etc..). Well you could make it where you have one program for dialogs and one for levels. Where in the levels you would have something like
and the starting program (main one) would have you declariations of your varibles and also DelVar L before your main loop.
I can explain this to you more if you would like, I hope this doesn't discuorage you as it would make your program size alot smaller. Thanks and good luck!
p.s. lots of spelling errors here .
Here are a few optimizations I would like to suggest.
Code: Select all
For(I,1,8
For(J,1,16
If [A](I,J)=1:Output(I,J,"=
etc...
can be
For(I,1,8
For(J,1,16
Output(I,J,sub(" =+-",[A](I,J)+1,1
End
End
Code: Select all
L+1->L
If L=1:Then
;matix code for the level
;the string to be displayed on top (like L=left or w/e)
;the cord. of the end of the level...
;a flag for which type of enime(s)
End
etc each level
;here would be your display routine, I know you have some levels where 3 on a matic would be a R or something. But if you went and reworked it where 0=space 1="=" etc then you would only need one map display routine.
I can explain this to you more if you would like, I hope this doesn't discuorage you as it would make your program size alot smaller. Thanks and good luck!
p.s. lots of spelling errors here .
-
- Sir Posts-A-Lot
- Posts: 245
- Joined: Mon 14 Nov, 2005 9:47 pm
- Location: Getting overwhelmed by everything
- Contact:
well, i think that im not too far into mission 2 to instate your first suggestion into it, plus into the other missions as well, but if you could explain your second suggestion to me a little more for me to understand it. I think it may be a little late right now with the progress I made, but after I release Mission 2, i could probably use what you said to revise the three missions as to make them an easier access.
BTW, Mission 2 is going ok, first boss is almost done, and i think it will be quite fun/funny (im hoping).
Most of this is going to take alot of guess and check to see if it will work the way i want it to.
Edit: Your first suggestion rocks! Im switching all map fuctions over to it right now for Missions 0, 1, and 2. Could you post button pathway for the sub( command though? would be easier than using catalog
BTW, Mission 2 is going ok, first boss is almost done, and i think it will be quite fun/funny (im hoping).
Most of this is going to take alot of guess and check to see if it will work the way i want it to.
Edit: Your first suggestion rocks! Im switching all map fuctions over to it right now for Missions 0, 1, and 2. Could you post button pathway for the sub( command though? would be easier than using catalog
I am not sure if it is anywhere besides catalog, at least not with the use of any asm routines. Well to go into detail I meant something like making all you level be runned through one program.
Ok I will show an example with your code, you have a matix in each S1-SX program and you have a display routine for each program
well instead of you having a display routine on each SX program you could put it inside of one example of a Level program:
Now that you made the level program like that you would need to modify the main program. Basiclly I would do something like this:
Ok I will show an example with your code, you have a matix in each S1-SX program and you have a display routine for each program
Code: Select all
:For(I,1,8
:For(J,1,16
:If [J](I,J)=1
:Output(I,J,"!
:If [J](I,J)=2
:Output(I,J,"+
:If [J](I,J)=3
:Output(I,J,"-
:End
:End
Code: Select all
DelVar [J]L+1→L ;we delete [J] so we don't need to waste the memory in case you have alot of space taken up in the RAM
If L=1:Then
:"WelcomeToStealth→Str0
:5→X
:2→Y
:[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
[2,3,2,3,3,3,3,3,3,3,3,3,3,3,3,2]
[1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1]
[1,0,2,3,2,0,2,0,2,3,3,3,3,3,3,2]
[1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0]
[1,0,2,3,3,3,2,0,2,3,3,3,3,3,3,2]
[1,0,1,0,0,0,1,0,1,0,0,0,0,0,0,0]
[2,3,2,0,0,0,2,3,2,0,0,0,0,0,0,0
:End
If L=2:Then
:"ThisGuyLooksUp→Str0
:2→Y
:[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
[0,2,3,3,3,3,3,3,3,3,2,0,0,0,0,0]
[0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0]
[2,2,0,2,3,3,2,0,0,0,2,3,3,2,0,0]
[0,0,0,1,0,0,1,0,0,0,0,0,0,1,0,0]
[2,3,3,2,0,0,1,0,0,0,2,2,0,1,0,0]
[0,0,0,0,0,0,2,3,3,3,2,1,0,1,0,0]
[0,0,0,0,0,0,0,0,0,0,0,2,0,2,0,0
:End
...etc for each level, for mission one you have 6? so it would goto If L=6..
Ans→[J] ;since the matix stays in the Ans position you don't need to do →[J] each time. btw a optimization is to take off the ]] closing of a matix.
:For(I,1,8
:For(J,1,16
:Output(I,J,sub(" !+-RLUD",[J](I,J)+1,1 ;since a blank space is 0 in the matix we add 1 so we don't get a domain error. You would need to make 1="!" on every matix and same with the other chars i.e. "R","L","U","D" etc... so make "R"=4 on every matix. Get what I am saying?
:End
:End
Code: Select all
DelVar L
;you can make the dialog for the opening here or make a program that will run this program after. i.e. the user runs prgmSTART (which has the dialog) and after the dialog is finished it would call this prgm (say this is MAIN), so it would be prgmMAIN.
While 1 ;this would make it run indefinitly, so if you want the game or mission to end when you get to a certain level then you would do something like Repeat L=X ;X being the last level, so the program would run the last level then quit.
prgmLEVEL ;every time you end a level you will need to run prgmLEVEL to make the next level.
Output(1,1,Str0
I will continue this if you want to do it, or if you understand me. I have it all worked out in my head :P.
-
- Sir Posts-A-Lot
- Posts: 245
- Joined: Mon 14 Nov, 2005 9:47 pm
- Location: Getting overwhelmed by everything
- Contact:
I can do a beta, did you read through my post above?
You can send it to me at kalan@kalan.us
You can send it to me at kalan@kalan.us
-
- Sir Posts-A-Lot
- Posts: 245
- Joined: Mon 14 Nov, 2005 9:47 pm
- Location: Getting overwhelmed by everything
- Contact:
ok i read your post, and i understand it (somewhat ) but the real problem with making that is when i make my branching out programs.
By mission 1, im sure you meant mission 0, so just to keep your pattern, mission 2 is 10 screens. Even though I could make it in a pattern up to a point like you said, and I could even possibly still go backwards, it would be incredibly hard for me to figure out how you can go in many different directions while the level program keeps track of them all
Unless you can apply some sort of different path generator, thus allowing the player to not only move backwards, but also move in different paths branching off from the main path. i think it would be better with the first idea which moves quite fast and saves on some ram.
Thank you though for suggesting both these improving plans. I think you deserve your own slot on the credits .
Edit: ok, kalan and comp will both be testers unless someone else wants to test
By mission 1, im sure you meant mission 0, so just to keep your pattern, mission 2 is 10 screens. Even though I could make it in a pattern up to a point like you said, and I could even possibly still go backwards, it would be incredibly hard for me to figure out how you can go in many different directions while the level program keeps track of them all
Unless you can apply some sort of different path generator, thus allowing the player to not only move backwards, but also move in different paths branching off from the main path. i think it would be better with the first idea which moves quite fast and saves on some ram.
Thank you though for suggesting both these improving plans. I think you deserve your own slot on the credits .
Edit: ok, kalan and comp will both be testers unless someone else wants to test
-
- Sir Posts-A-Lot
- Posts: 252
- Joined: Tue 09 Aug, 2005 9:34 pm
- Location: south of the north pole
- Contact:
I can beta test too if you need another person. You can just send it to me at katmaster200@yahoo.com .
Also, about where to find the sub( command, I use omnicalc when I'm programming on the calculator itself. It installs a menu when you double tap VARS that you can paste any command into. Don't know if that helps but its great with xLIB programming...
Also, about where to find the sub( command, I use omnicalc when I'm programming on the calculator itself. It installs a menu when you double tap VARS that you can paste any command into. Don't know if that helps but its great with xLIB programming...
Well I just thought I would tell you about something else you can optimize:
Your walking engine:
Optimized:
Hope this helps.
Your walking engine:
Code: Select all
:While 1
:T+1→T
:getKey→G
:If G=0
:getKey→G
:If G=24:Then
:If [J](X,Y-1)=0:Then
:Y-1→Y
:Output(X,Y+1,"
:Output(X,Y,"S
:End
:End
:If G=26:Then
:If [J](X,Y+1)=0:Then
:Y+1→Y
:Output(X,Y-1,"
:Output(X,Y,"S
:End
:End
:If G=25:Then
:If [J](X-1,Y)=0:Then
:X-1→X
:Output(X+1,Y,"
:Output(X,Y,"S
:End
:End
:If G=34:Then
:If [J](X+1,Y)=0:Then
:X+1→X
:Output(X-1,Y,"
:Output(X,Y,"S
:End
:End
:If Y=16 and X=5:Then
:ClrHome
:2→Y
:prgmS2
:End
:End
Code: Select all
:Repeat Y=16 and X=5 ;change this for the other cords
:T+1→T
:Repeat Ans
:getKey→G
:End
:Output(X,Y," " ; just one space, you can remove the second "
:{X,Y→L1 ;use a varible or a different list if you want, but this is a temp list
:Y+(G=26)-(G=24→Y
:X+(G=34)-(G=25→X
:If [J](X,Y:Then ;If it isn't a blank spot then it will not let you walk on it, but you will need to change this to allow you to walk on R L etc..
:L1(1→X
:L1(2→Y
:End
:End
:2→Y ;no clearhome here since you have it clearhome in prgm S2
:prgmS2
-
- Sir Posts-A-Lot
- Posts: 245
- Joined: Mon 14 Nov, 2005 9:47 pm
- Location: Getting overwhelmed by everything
- Contact:
it looks like i understand that, but could you show me an example when there is two or more exits to another screen?
by the way, beta testing choosing is off. Im going to have each of you pick 1 boss to beta test instead of all three of you do all three bosses.
The order of picking the bosses comes in the style of first come first choose, or whoever posts first on which one they want.
You only get to know the titles, so:
Boss 1: Crab Battle (given to CompWiz)
Boss 2: Metal Gear Solid Torture (taken by kalan_vod)
Boss 3: Psycho Mantis (taken by katmaster)
I would tell you more, but that would ruin the surprise for each boss. besides, im spoiling the bosses basic ideas enough as it is with the titles.
Edit: Other beta testers, please choose quickly or I will assign you a boss.
by the way, beta testing choosing is off. Im going to have each of you pick 1 boss to beta test instead of all three of you do all three bosses.
The order of picking the bosses comes in the style of first come first choose, or whoever posts first on which one they want.
You only get to know the titles, so:
Boss 1: Crab Battle (given to CompWiz)
Boss 2: Metal Gear Solid Torture (taken by kalan_vod)
Boss 3: Psycho Mantis (taken by katmaster)
I would tell you more, but that would ruin the surprise for each boss. besides, im spoiling the bosses basic ideas enough as it is with the titles.
Edit: Other beta testers, please choose quickly or I will assign you a boss.
Last edited by Floodkiller on Thu 06 Apr, 2006 2:55 am, edited 4 times in total.
boss two
Well if you decide not to switch over to the way of organization I have discribed some what, you could simply add a another condition in the Repeat:
Just the main loop needs to be changed, but if you went with the way I am discribing it would be something similar to:
Which would allow the game to run alot faster and only having that engine once, not being repeated in each program. Where if the cord of the X,Y on the matix has a decimal of anything (1.0 would be no decimal but 1.1 would), but I will not go into this until you let me know if you are interested.
Well if you decide not to switch over to the way of organization I have discribed some what, you could simply add a another condition in the Repeat:
Code: Select all
:Repeat Y=16 and X=5 or Y=1 and X=8;These are just examples of cords.
Code: Select all
Repeat fpart([J](Y,X
-
- Sir Posts-A-Lot
- Posts: 245
- Joined: Mon 14 Nov, 2005 9:47 pm
- Location: Getting overwhelmed by everything
- Contact:
-
- Sir Posts-A-Lot
- Posts: 245
- Joined: Mon 14 Nov, 2005 9:47 pm
- Location: Getting overwhelmed by everything
- Contact:
you know kalan, even though that optimized walking code was extremely well, i ran into the problem that it went too fast for what felt like true Stealth speed for me
however, i think i will use that coding for the TI-83 version of Stealth, cause I know that runs at an excruciatingly slower rate, and will probably need that speed boost .
however, i think i will use that coding for the TI-83 version of Stealth, cause I know that runs at an excruciatingly slower rate, and will probably need that speed boost .