Author Topic: Battle Ship  (Read 12888 times)

0 Members and 1 Guest are viewing this topic.

Offline meishe91

  • Super Ninja
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2946
  • Rating: +115/-11
    • View Profile
    • DeviantArt
Re: Battle Ship
« Reply #30 on: August 03, 2010, 01:52:01 pm »
Thanks. I'm happier with this one because I got everything fixed and it's still smaller.
Spoiler For Spoiler:



For the 51st time, that is not my card! (Magic Joke)

Offline Hot_Dog

  • CoT Emeritus
  • LV12 Extreme Poster (Next: 5000)
  • *
  • Posts: 3006
  • Rating: +445/-10
    • View Profile
Re: Battle Ship
« Reply #31 on: August 03, 2010, 02:10:13 pm »
How big is it now? 
* HotDog is impressed

Offline meishe91

  • Super Ninja
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2946
  • Rating: +115/-11
    • View Profile
    • DeviantArt
Re: Battle Ship
« Reply #32 on: August 03, 2010, 02:57:14 pm »
Ok. So I decided to completely do a rewrite of my Battle Ship program because I thought it was to big and just wasn't satisfied with it. I was also to lazy to just go back and rework the code to work. But anywho, to the program.

I did succeed in making this one smaller by about 62 bytes while still making it better than the previous version (it stands at 990 bytes). It should work perfectly now but if anyone discovers a bug please let me know.

[2ND] - It is the enter button.
[ALPHA] - When setting the maps this is what flips it between vertical and horizontal movement.
[ENTER] - Used to exit the Pause after turns.

This version fixes the previous bugs that I knew about. Like I said before if you find one just tell me and I'll try to fix it.

I can't think of much else to say so I'll let you guys to it. Have fun and enjoy.

Here is the source code in case anyone else can find optimizations. I'm very tired so there is a chance I missed something.

Spoiler For To Keep it Shorter:
Code: (Battle Ship Final) [Select]
ClrHome
"3221110000→Str2
"MH  →Str1
0identity(16→[A]
DelVar TDelVar SDelVar LRepeat S=20 and T=20
ClrHome
For(A,1,8
Output(A,9-8L,"++++++++
End
Output(1,9-8L,"PLAYER
Output(1,16-8L,L+1
1→X
1→Y
DelVar G1→R
Repeat R=11
Repeat K=21
For(A,0,expr(sub(Str2,R,1
Output(X+AG,Y+Anot(G)+8L,sub("* ",2-[A](X+AG,Y+Anot(G)+8L),1
End
If Ans=31
not(G→G
min(8-Gexpr(sub(Str2,R,1)),max(1,X+sum(DeltaList(K={25,34→X
min(8-not(G)expr(sub(Str2,R,1)),max(1,Y+sum(DeltaList(K={24,26→Y
For(A,0,expr(sub(Str2,R,1
Output(X+AG,Y+Anot(G)+8L,"*
End
Repeat Ans
getKey→K
End
End
DelVar HFor(A,0,expr(sub(Str2,R,1
H+[A](X+AG,Y+Anot(G)+8L→H
End
If not(H
Then
For(A,0,expr(sub(Str2,R,1
1→[A](X+AG,Y+Anot(G)+8L
End
If L
T+1+expr(sub(Str2,R,1→T
If not(L
S+1+expr(sub(Str2,R,1→S
R+1→R
End
End
not(L→L
End
1→X
Ans→Y
randInt(0,1→L
Lbl 1
Repeat S=0 xor T=0
ClrHome
For(A,1,8
Output(A,1+8L,"++++++++
End
Output(1,1+8L,"PLAYER
Output(1,8+8L,L+1
For(A,1,8
For(B,9-8L,16-8L
Output(A,B,sub(Str1,4-[A](A,B),1
End
End
1→X
9→Y
Repeat K=21
Output(X,Y-8L,sub(Str1,4-[A](X,Y-8L),1
min(8,max(1,X+sum(DeltaList(K={25,34→X
min(16,max(9,Y+sum(DeltaList(K={24,26→Y
Output(X,Y-8L,"S
Output(3,4+8L,sub("ABCDEFGH",X,1
Output(3,5+8L,Y-8
Repeat Ans
getKey→K
End
End
If 1<[A](X,Y-8L
Then
Output(5,1+8L,"TRY
Output(6,4+8L,"AGAIN
Pause
Goto 1
End
If not([A](X,Y-8L
Then
Output(5,3+8L,"MISS
3→[A](X,Y-8L
not(L→L
Pause
Goto 1
End
If 1=[A](X,Y-8L
Then
Output(5,3+8L,"HIT!
If L
T-1→T
If not(L
S-1→S
2→[A](X,Y-8L
not(L→L
Pause
End
End
End
DelVar [A]ClrHome
not(L→L
Output(4,5,"PLAYER
Output(4,12,L+1
Output(5,7,"WON!

And thanks.
« Last Edit: August 03, 2010, 02:57:57 pm by meishe91 »
Spoiler For Spoiler:



For the 51st time, that is not my card! (Magic Joke)

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Battle Ship
« Reply #33 on: August 04, 2010, 08:08:43 pm »
wow nice update! Pretty small too. I agree it's hard to keep a lot of games under 1 KB. I myself often had an hard time doing it with anything other than tunnel

Offline ztrumpet

  • The Rarely Active One
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5712
  • Rating: +364/-4
  • If you see this, send me a PM. Just for fun.
    • View Profile
Re: Battle Ship
« Reply #34 on: August 05, 2010, 10:33:17 am »
wow nice update! Pretty small too. I agree it's hard to keep a lot of games under 1 KB. I myself often had an hard time doing it with anything other than tunnel
Wasn't there the one where...
* Netham45 runs!
...yeah... ;D
« Last Edit: August 05, 2010, 10:33:27 am by ztrumpet »

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Battle Ship
« Reply #35 on: August 06, 2010, 09:43:46 pm »
Oh right, that one...