Recent Forum Posts

Looking for something?

Don't see a match? Post to the community

From categories:
page 1123...next »

For those of you who want to change the game to make it different, here are a few optimization codes for it. First is how to change the color of the snake:

-instead of-

Horizontal Xmin
Horizontal Xmax
Vertical Ymin
Vertical Ymax

-put-

Shade(-10,10)
Pxl–Off(-10,10,10,10)
Pxl–Off(10,10,10,-10)
Pxl–Off(10,-10,-10,-10)
Pxl–Off(-10,-10,-10,10)

And for each Pxl–On(, replace it with Pxl–Off(. And for each Pxl–Off(, replace it with Pxl–On(.

The next optimization code is how to make the box smaller. The code goes as followed:

-instead of-

ClrDraw
ZStandard
CoordOff
GridOff
AxesOff
LabelOff

-put-

ClrDraw
ZStandard
G–T /// By G–T, I mean The mode G–T, to get this press Mode while in program, and then scroll down to where it says "Full   Horiz   G–T"
CoordOff
GridOff
AxesOff
LabelOff

-instead of-

randInt(1,93)→B
randInt(1,61)→A

-put-

randInt(1,45)→B
randInt(1,49)→A

That's it for now. Please reply if you have ideas for more optimizations.

Re: My Snake code by _0xBaDc0dE#_0xBaDc0dE#, 26 Oct 2020 19:45

I have always liked the game Snake. I have made my own version of it but instead of being on the Home screen, it's on the graph. The code goes as followed:

ClrDraw
ZStandard
CoordOff
GridOff
AxesOff
LabelOff
-10→Xmin
10→Xmax
-10→Ymin
10→Ymax
0→S
5→dim(⸤X)
5→dim(⸤Y)
1→K
10→X
10→Y
randInt(1,93)→B
randInt(1,61)→A
Horizontal Xmin
Horizontal Xmax
Vertical Ymin
Vertical Ymax
∆ /// When you see this symbol, leave the space it's in empty
Lbl 1
getKey→G
∆
Pxl–On(A,B)
∆
If G=26 and D≠2
1→D
If G=24 and D≠1
2→D
If G=25 and D≠4
3→D
If G=34 and D≠3
4→D
∆
If D=1
X+1→X
If D=2
X–1→X
If D=3
Y–1→Y
If D=4
Y+1→Y
∆
Pxl–Off(⸤Y(K),⸤X(K))
∆
Pxl–On(Y,X)
X→⸤X(K)
Y→⸤Y(K)
∆
If X=B and Y=A
Then
S+5→S
dim(⸤Y)+5→dim(⸤Y)
dim(⸤X)+5→dim(⸤X)
randInt(1,93)→B
randInt(1,61)→A
End
∆
K+1→K
If K=dim(⸤X)
1→K
∆
Goto 1

I can't figure out how to get the game to stop if the snake bumps into it's self, but I know it has something to do with "Pxl–Test(". If you can figure out how to do this, please post the code stating it.
My Snake code by _0xBaDc0dE#_0xBaDc0dE#, 26 Oct 2020 16:08

This is great! Just finished reading and I laughed the whole way through! XD

I am having trouble posting my own content onto the TI-Basic Developer site. Can someone help me or direct me to help? Please reply whenever possible.

Te: How to post content by _0xBaDc0dE#_0xBaDc0dE#, 26 Oct 2020 15:19

Is Celtic III compatible with my calculator os (2.55)? Because I do remember seeing somewhere that a library called xLib wasn't compatible, so I was just wondering.

Re: Quick Question! by FoxxTrottFoxxTrott, 25 Oct 2020 12:53

You can try Token Finder Plus
http://tibasicdev.wikidot.com/archive:token-finder
Or..
Token Finder Pro.
https://www.cemetech.net/downloads/files/2035/x2126

Pro is newer and cleaner and more up-to-date than Plus, but both do the same things. Both are programs I made.
But both do require Celtic III to be installed (flash app).

You cannot get the ▶ in TI-Basic without the help of libraries or hooks.


𝔹𝕚𝕠_ℍ𝕒𝕫𝕒𝕣𝕕𝟙𝟚𝟠𝟚
Discord server is no longer available. Reason: Deleted

I'm assuming you are talking about the store symbol that is used to store numbers inside variables?
I think this could help as a simple character prog.

ClrHome
ClrDraw
1->X
1->Y
1->S
1->T
0->A
While 1
Output(Y,X,"->"
If X--=--S or Y--=--T
Then
" "->Str1
Output(T,S,Str1
X->S
Y->T
end
GetKey A
If A=24
Then
X-1->X
If X=0
1->X
End
If A=25
Then
Y-1->Y
If Y=0
1->Y
End
If A=26
Then
X+1->X
If X=17
16->X
End
If A=34
Then
Y+1->Y
if Y=9
8->Y
End
End

That should work if you want to punch that into your calc.

~william 756

Re: Quick Question! by william756william756, 24 Oct 2020 23:01

Hey, everyone! I just wanted to ask if it is possible to input the ▶ on TI-84+ SE without any apps. There is a program I am working on and I would like for it to have this character. Any replies help. Thanks!

Quick Question! by FoxxTrottFoxxTrott, 24 Oct 2020 18:07

I think that I figured out why the first program does what it does.
The value of getKey is reset every time the loop goes back to the beginning. When you use the getKey command, it sets the value to zero every time when a key is pressed. I put in a pause at the beginning of my test program to see what the value of getkey would be…

"The solution is to run a "dummy" getKey just before the loop begins — its value won't be used for anything, and it will reset the value of getKey to 0. This can also be used to clear keypresses meant for loading programs from inside a shell."

This quote is from the getKey page. I believe what it is referring to is that you put a line of getKey and it resets the value of it to zero.

As for your second program, I will have to do some more testing and reading to try to help you

Hope this helps!

: Pause getKey
: ClrHome
: While 1
: getKey->K
: Disp K
: End

From what I read from the getKey page, it says it is only reset to 0 if you use it directly instead of storing it in a variable. I don't use it directly very often, and in both of these cases, I did not. But the thing that baffled me is that I got two different results testing the same key. When I was able to get the left arrow "Held down" during the first program, it returned G (getKey) as:
24,0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,….
But when I did the second program..which I forgot to give the code for….

:ClrHome
:Repeat G=105
:Lbl S
:getKey -> G
:Output(8,1,G)
:If G<10
:Output(8,2," ")        [one space between "s]
:If G=0
:Then
:Output(4,8,"O")
:Output(4,1," ")
:Output(1,8," ")
:Output(8,8," ")
:Output(4,16," ")
:Goto S
:End
:If G=24
:Then
:Output(4,8," ")
:Output(4,1,"O")
:Goto S
:End
:If G=25
:Then
:Output(4,8," ")
:Output(1,8,"O")
:Goto S
:End
:If G=26
:Then
:Output(4,8," ")
:Output(4,16,"O")
:Goto S
:End
:If G=34
:Then
:Output(4,8," ")
:Output(8,8,"O")
:Goto S
:End
:End
:ClrHome

…I got
24,0,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24

This doesn't seem to me like it has anything to do with it being reset to zero. Then again, I have no clue why these two programs got different results even though my methods were the same. So, I guess the part I'm really trying to figure out is why the two programs produced different results.

I have started a code to make the game more like a 2D Minecraft Clone. This is to make a world seed generator and to make the world bigger. But I have no idea where it should go in the original code, and I am having trouble with the seed generation part. Here is what I have so far:

If X=0
Then 
16->X
[B]->[A]
End
If X=17
Then
1->X
[C]->[A]
If Y=9
Then
1->Y
[D]->[A]

If you have any idea of how to make these on the calculator, please reply explain where the section goes in the code.

Is this its own code or is this supposed to be attached to the rest? Adding the other optimizations didn't work for my calculator. Could you help me get the codes in the right order.

Re: 2048 game by _0xBaDc0dE#_0xBaDc0dE#, 23 Oct 2020 18:01

I need help on a few things about the optimization code. First, where do we put this in the original code? And second, what do you mean by (if horizontal), [if up] and [if right]? I need help understanding this.

Re: 2048 game by _0xBaDc0dE#_0xBaDc0dE#, 23 Oct 2020 17:44

Interesting results, Pixel Physics. I have developed several TI-BASIC games, and I would have to agree with CalcNerd's reply. As far as loopholes, I haven't found any. But, if you are developing games, the arrow keys are generally the best choice for several reasons, including the fact that the calculator continuously reads the value of getKey if it is one of the arrow keys.

I'm no expert here, so don't quote me. I believe that the arrow keys and a few others have special functions that allow them to be held down. I don't think that I can really answer your question fully, and I'm sorry about that. I believe that when you use getKey it puts the value of zero back into the variable and if you would press it at the right time (not positive here). It says this on the getKey page "The value of getKey is cleared every time you read from it, until a new key is pressed".

Again, I am not sure about this, but you can look at the getKey page for more insight.

Hope you can figure it out!

So, I was just messing around with the getKey variable to see if I could find any loopholes for measuring multiple key presses or measuring if the key is being held down. I came across some strange things and was wondering if anyone could explain to me why the Ti operating system acts this way.

So I started out with the most basic of programs to experiment on:

:Repeat G=105
:getKey -> G                   (-> is the store symbol)
:Disp G
:End

What I found was that if you press a key down and hold it, it does not measure it more than one time. (This was done on a Ti-83+ and a Ti-84+ SE) But, if you press the key down a few times at the same rate as it is displaying G, and then hold it down immediately, it will measure it every other time it displays. (Note, this can take a while to achieve if you don't have quick fingers.) What makes this happen internally?

The other observation I made was that with this program, if you press down a key and hold it, it will only measure it once. But, I made another program that uses output instead of disp to make a "O" move around the screen and output the key # in the corner. I found that when you hold the key down on this program, it measures it once, then measures 0, and then measures the key # for as long as the key is pressed. What makes this happen?

As a game designer who wants to get the best from Ti-Basic in his programs, These things interest me. Not only because I am fascinated by code and programming, but also because there may be potential loopholes for better control in my programs and games. If anyone knows enough about this subject to help, I would greatly appreciate it. I will continue experimenting and researching and post more updates here if there are any.

Thanks for reading!

I just realized that my karma went up! Cool! I made my own version of Tic-Tac-Toe and would like any suggestions that anyone has to make it better. I used a technique to figure out the position that is sort of cool. I really didn't think that I would be able to make this game, but I finally did! I would like to make an AI, but I don't want to really just use randint( to do so. I think that it could make an ok AI though.

Here is the code…

:ClrHome
:Delvar [A]{3,3->dim([A]  // I included a Martix for when in the future that I put in an AI and also for checking for open spots
:For(I,3,13
:Output(3,I,"-
:Output(5,I,"-
:End
:For(I,2,6
:Output(I,6,"I
:Output(I,10,"I
:End
:Output(8,5,"Player:
:"XO"->Str1:1->B
:Repeat K=45
:getKey->K
:Output(8,12,sub(Str1,B,1
:If sum(K={72,73,74,82,83,84,92,93,94
:Then
:K-61->G:G/10->G //This is my technique to find the position on the board
:If [A](iPart(G),10fPart(G))=0
:Then
:Output(2iPart(G),40fPart(G),sub(Str1,B,1
:B->[A](iPart(G),10fPart(G)
:B+1->B
:If B=3
:1->B
:End
:End
:End
Tic-Tac-Toe by CalcNerdCalcNerd, 20 Oct 2020 21:40

Ok. I thought that it could be a typo. That helps a lot! Thanks!

Re: Source Coder 3 Language by CalcNerdCalcNerd, 19 Oct 2020 13:47

All the settings are set to whatever is on the left side (except for the 'set clock' button, but if you push that it just resets the time)

Have you checked some mode settings of the calculator are correct? If some graph/home settings are set weird, it can cause problems.


𝔹𝕚𝕠_ℍ𝕒𝕫𝕒𝕣𝕕𝟙𝟚𝟠𝟚
Discord server is no longer available. Reason: Deleted

page 1123...next »