<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wikidot="http://www.wikidot.com/rss-namespace">

	<channel>
		<title>I cant figure this out</title>
		<link>http://tibasicdev.wikidot.com/forum/t-4287783/i-cant-figure-this-out</link>
		<description>Posts in the discussion thread &quot;I cant figure this out&quot; - need some help coding</description>
				<copyright></copyright>
		<lastBuildDate>Thu, 12 Mar 2026 11:01:35 +0000</lastBuildDate>
		
					<item>
				<guid>http://tibasicdev.wikidot.com/forum/t-4287783#post-3634255</guid>
				<title>Re: I cant figure this out</title>
				<link>http://tibasicdev.wikidot.com/forum/t-4287783/i-cant-figure-this-out#post-3634255</link>
				<description></description>
				<pubDate>Fri, 17 Nov 2017 01:21:00 +0000</pubDate>
				<wikidot:authorName>Trenly</wikidot:authorName>				<wikidot:authorUserId>1905506</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Thats part of the reason I dont want it 100% foolproof, or even 90% foolproof</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://tibasicdev.wikidot.com/forum/t-4287783#post-3634247</guid>
				<title>Re: I cant figure this out</title>
				<link>http://tibasicdev.wikidot.com/forum/t-4287783/i-cant-figure-this-out#post-3634247</link>
				<description></description>
				<pubDate>Fri, 17 Nov 2017 01:09:07 +0000</pubDate>
				<wikidot:authorName>Myles_Zadok</wikidot:authorName>				<wikidot:authorUserId>2935702</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>But isn't a part of the fun of a game discovering all of the cheats and secrets that allow you to do stuff you weren't supposed to be able to do?</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://tibasicdev.wikidot.com/forum/t-4287783#post-3634144</guid>
				<title>Re: I cant figure this out</title>
				<link>http://tibasicdev.wikidot.com/forum/t-4287783/i-cant-figure-this-out#post-3634144</link>
				<description></description>
				<pubDate>Thu, 16 Nov 2017 21:11:52 +0000</pubDate>
				<wikidot:authorName>Trenly</wikidot:authorName>				<wikidot:authorUserId>1905506</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>It's not completely foolproof, I could easily create a save code by hand using a rand that I picked randomly, but if people try to modify the save in the list, I can compare it to the string to see if they changed it. For example, store the savecode into string 8, and the pin into string 9</p> <div class="code"> <pre><code>Lbl L expr(Str8→S expr(Str9→N (S+(N/100))/(N/100)→N {0,.5,1→L₂ NL₂→L₃ Med-Med L₂,L₃,Y₁ Equ►String(Y₁,Str1 sub(Str1,1,length(Str1)-3→Str1 expr(sub(Str1,1,1→N DelVar L₁(length(Str1)-1)/N→dim(L₁ For(E,0,dim(L₁)-1 expr(sub(Str1,2+EN,N→L₁(E+1 End If L1≠LSAVE Then ClrDraw ClrHome Output(1,1,&quot;Your Save File Ouptut(2,1,&quot;Is Corrupted Output(3,1,&quot;Please enter the Output(4,1,&quot;Save Data! Input &quot;ID:&quot;, Str8 Input &quot;PIN:&quot;, Str9 End If L1≠LSAVE:Goto L</code></pre></div> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://tibasicdev.wikidot.com/forum/t-4287783#post-3634122</guid>
				<title>Re: I cant figure this out</title>
				<link>http://tibasicdev.wikidot.com/forum/t-4287783/i-cant-figure-this-out#post-3634122</link>
				<description></description>
				<pubDate>Thu, 16 Nov 2017 19:59:31 +0000</pubDate>
								<wikidot:authorUserId>3338172</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Oh, anyways, I think it will be fun.</p> <p>by the way, nice security function.</p> <p>I think to make it foolproof is that you editlock the program, and add the ONBLOCK assembly program to it, or run it from a different program (Subprogram), so that way, they can't edit it while running the subprog.<br /> I cannot garentee that this is correct.</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://tibasicdev.wikidot.com/forum/t-4287783#post-3634100</guid>
				<title>Re: I cant figure this out</title>
				<link>http://tibasicdev.wikidot.com/forum/t-4287783/i-cant-figure-this-out#post-3634100</link>
				<description></description>
				<pubDate>Thu, 16 Nov 2017 19:00:58 +0000</pubDate>
				<wikidot:authorName>Michael2_3B</wikidot:authorName>				<wikidot:authorUserId>1974546</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Nice! So is your final code completely foolproof? I'll have to try it here soon when I can.</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://tibasicdev.wikidot.com/forum/t-4287783#post-3634095</guid>
				<title>Re: I cant figure this out</title>
				<link>http://tibasicdev.wikidot.com/forum/t-4287783/i-cant-figure-this-out#post-3634095</link>
				<description></description>
				<pubDate>Thu, 16 Nov 2017 18:44:32 +0000</pubDate>
				<wikidot:authorName>Trenly</wikidot:authorName>				<wikidot:authorUserId>1905506</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>But I haven't even said what the game is yet? Just that I wanted a save feature for it?</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://tibasicdev.wikidot.com/forum/t-4287783#post-3634079</guid>
				<title>Re: I cant figure this out</title>
				<link>http://tibasicdev.wikidot.com/forum/t-4287783/i-cant-figure-this-out#post-3634079</link>
				<description></description>
				<pubDate>Thu, 16 Nov 2017 18:09:57 +0000</pubDate>
								<wikidot:authorUserId>3338172</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>I know. When I saw and read your first post, it seemed interesting and fun!</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://tibasicdev.wikidot.com/forum/t-4287783#post-3633991</guid>
				<title>Re: I cant figure this out</title>
				<link>http://tibasicdev.wikidot.com/forum/t-4287783/i-cant-figure-this-out#post-3633991</link>
				<description></description>
				<pubDate>Thu, 16 Nov 2017 15:31:15 +0000</pubDate>
				<wikidot:authorName>Trenly</wikidot:authorName>				<wikidot:authorUserId>1905506</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Bruh, this isnt even any code for the game other than loading and unloading data from a list. I havent posted any of the main game code</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://tibasicdev.wikidot.com/forum/t-4287783#post-3633973</guid>
				<title>Re: I cant figure this out</title>
				<link>http://tibasicdev.wikidot.com/forum/t-4287783/i-cant-figure-this-out#post-3633973</link>
				<description></description>
				<pubDate>Thu, 16 Nov 2017 14:59:39 +0000</pubDate>
								<wikidot:authorUserId>3338172</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>That seems like a great game! I wish I could program on my TI-84+, but I gave my word to my dad to take a break from TI-Basic Programming for a while, so I can learn JavaScript and improve my coding skills.<br /> :(</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://tibasicdev.wikidot.com/forum/t-4287783#post-3633661</guid>
				<title>Re: I cant figure this out</title>
				<link>http://tibasicdev.wikidot.com/forum/t-4287783/i-cant-figure-this-out#post-3633661</link>
				<description></description>
				<pubDate>Thu, 16 Nov 2017 06:46:26 +0000</pubDate>
				<wikidot:authorName>Trenly</wikidot:authorName>				<wikidot:authorUserId>1905506</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Thanks. I will end up using the number to string routine smply for compatability, as I own an 83+ and 84+. I may work on an encryption algorithm at some point, possibly multiplying the number thats generated by a rand generated by a seeded by the first data point rounded to a certain position.</p> <div class="code"> <pre><code>Save Code as a Number, S SaveList(1)-&gt;rand rand/.00001-&gt;X .00001iPart(X+(fPart(X)≥.5-&gt;X //my short routine for rounding to the nearest n or multiple of n. SX Ans gets stored to the string to be displayed and saved Display the string and X</code></pre></div> <p>My thought is that decryption then just takes an extra input (x) and multiplies the value in the string, then stores it back to the string for putting into the list. I know its not foolproof, but it might work</p> <hr /> <p>Edit: Here is what I have now. Thanks to you, its working! Also, if anyone changes the PIN or the Code, it will generally either error out, or create a list with larger dimensions than intended. I can just add a check for the list dimensions after the save is loaded and it should work.</p> <div class="code"> <pre><code>prgmCREATESAVE 1+int(log(abs(max(L₁→N {0,.5,1→L₂ NL₂→L₃ Med-Med L₂,L₃,Y₁ Equ►String(Y₁,Str1 sub(Str1,1,length(Str1)-3→Str1 For(E,1,dim(L₁ For(I,1,N-(1+int(log(abs(L₁(E Str1+&quot;0→Str1 End L₁(E→X XL₂→L₃ Med-Med L₂,L₃,Y₁ Equ►String(Y₁,Str2 sub(Str2,1,length(Str2)-3→Str2 Str1+Str2→Str1 End sum(L₁→rand rand→X X/.01→X .01iPart(X+(fPart(X)≥.5→X Xexpr(Str1)-X AnsL₂→L₃ Med-Med L₂,L₃,Y₁ Equ►String(Y₁,Str2 sub(Str2,1,length(Str2)-3→Str2 Disp Str2,100X</code></pre></div> <div class="code"> <pre><code>prgmLOADSAVE Input &quot;Code:&quot;,S Input &quot;PIN:&quot;,N (S+(N/100))/(N/100)→N {0,.5,1→L₂ NL₂→L₃ Med-Med L₂,L₃,Y₁ Equ►String(Y₁,Str1 sub(Str1,1,length(Str1)-3→Str1 expr(sub(Str1,1,1→N DelVar L₁(length(Str1)-1)/N→dim(L₁ For(E,0,dim(L₁)-1 expr(sub(Str1,2+EN,N→L₁(E+1 End</code></pre></div> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://tibasicdev.wikidot.com/forum/t-4287783#post-3633638</guid>
				<title>Re: I cant figure this out</title>
				<link>http://tibasicdev.wikidot.com/forum/t-4287783/i-cant-figure-this-out#post-3633638</link>
				<description></description>
				<pubDate>Thu, 16 Nov 2017 05:42:36 +0000</pubDate>
				<wikidot:authorName>Michael2_3B</wikidot:authorName>				<wikidot:authorUserId>1974546</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Okay, you can use the number-to-string routine if you need it, but for the sake of simplicity I'm going to use the built in toString() function.</p> <p>I assume the longest data point will always be 1-9 digits long.<br /> This code will take a list and turn it into the save code string.</p> <div class="code"> <pre><code>Input &quot;List:&quot;,L1 1+int(log(abs(max(L1→N toString(Ans→Str1 For(E,1,dim(L1 For(I,1,N-(1+int(log(abs(L1(E Str1+&quot;0→Str1 End Str1+toString(L1(E→Str1 End Disp Str1</code></pre></div> <p>Hopefully that helps!</p> <p>Also, I recommend you encrypt the save code before displaying it. Without this, the user might create their own &quot;save code&quot; to cheat the game.</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://tibasicdev.wikidot.com/forum/t-4287783#post-3633625</guid>
				<title>I cant figure this out</title>
				<link>http://tibasicdev.wikidot.com/forum/t-4287783/i-cant-figure-this-out#post-3633625</link>
				<description></description>
				<pubDate>Thu, 16 Nov 2017 05:06:52 +0000</pubDate>
				<wikidot:authorName>Trenly</wikidot:authorName>				<wikidot:authorUserId>1905506</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>I was thinking about making a game, where its possible for a user to generate a custom save code, that could then be later used to load the game. The game data would be stored in a list. By doing this, I want to make an example list of {1,3,14,2} turn into 201031402. The way I plan to load the data is the following:</p> <div class="code"> <pre><code>Input &quot;Code:&quot;,Str1 expr(sub(Str1,1,1→N DelVar L₁(length(Str1)-1)/N→dim(L₁ For(E,0,dim(L₁)-1 expr(sub(Str1,2+EN,N→L₁(E+1 End L₁</code></pre></div> <br /> If you want to download the code to turn the data into a list to see how it works, <a href="http://tibasicdev.wikidot.com/local--files/forum:thread/LOADSVE.8xp" target="_blank">click here</a> <p>The problem I am having is in actually creating the number. I presume the code would use routines from the number one-liners, and would do something like this:</p> <div class="code"> <pre><code>Use the Number of Digits in Nonzero Integer routine to determine the longest data point. Store this to String 1 For, each of the data points in the list: Determine the length of that point Determine how many 0's need to be concatenated to make this the same length as the longest data point Append that many 0's onto String 1 Append the Data point onto string 1 End</code></pre></div> <br /> I am just having trouble making the function generate the save code. I know it will use the Number-To-String routine, and the routine for determining the Number of Digits in Nonzero Integer. If anyone would be able to help make the function that would turn the string into code, it would be helpful.
				 	]]>
				</content:encoded>							</item>
				</channel>
</rss>