Welcome,
Guest
. Please
login
or
register
.
Did you miss your
activation email
?
1 Hour
1 Day
1 Week
1 Month
Forever
Login with username, password and session length
Home
About
Team
Rules
Stats
Status
Sitemap
Chat
Downloads
Forum
News
Our Projects
Major Community Projects
Recent Posts
Unread Posts
Replies
Tools
SourceCoder3
Other Things...
Omnimaga Radio
TI-83 Plus ASM File Unsquisher
Z80 Conversion Tools
IES TI File Editor
Free RAM areas
Comprehensive Getkeyr table
URL Shortener
Online Axe Tilemap Editor
Help
Contact Us
Change Request
Report Issue/Bug
Team
Articles
Members
View the memberlist
Search For Members
Buddies
Login
Register
Omnimaga
»
Forum
»
Calculator Community
»
Other Calc-Related Projects and Ideas
»
TI Z80
»
The Lord of the Rings for 83+
« previous
next »
Print
Pages:
1
...
5
6
[
7
]
8
9
Go Down
Author
Topic: The Lord of the Rings for 83+ (Read 17051 times)
0 Members and 1 Guest are viewing this topic.
DJ Omnimaga
Clacualters are teh gr33t
CoT Emeritus
LV15
Omnimagician (Next: --)
Posts: 55943
Rating: +3154/-232
CodeWalrus founder & retired Omnimaga founder
The Lord of the Rings for 83+
«
Reply #90 on:
September 03, 2007, 05:07:00 am »
wow niceto see progress again
, I will be sure to try next version! Btw could u post the walking engine source? Maybe i could take a look into it and see if i can optimize something if i manage to understand the code ?
Logged
Jeremy Avalon
Guest
The Lord of the Rings for 83+
«
Reply #91 on:
September 03, 2007, 06:21:00 am »
c1-->
CODE
ec1PROGRAM:ZGA
:While 1
:DelVar B
:If not(L3(1 // This detects whether Aragorn's in the party. He's the de facto party leader.
:8->B // Otherwise the sprite for Frodo is used when moving around.
:real(2,0,1,1,12,8,0,12,0,8,1,0,0,0
:real(1,8X-8,8Y-8,1,8,1,A+2(B>0),B+32,1,0,0
:real(1,8X-8,8Y-8,1,8,1,A+2(B>0),B,3,0,1
:If not(N
:prgmXTEMP015 // Runs the random battle check
:If K<106
:DelVar K
:Repeat K≠0
:getKey->K
:End
:real(1,8X,8Y,1,8,1,0,0,0,0,0
:"ZCOL
:real(10,0,8
:If K=24
:Then
:2->A
:X-1->X
:prgmXTEMP008
:If (theta)<0
:X+1->X
:End
:If K=25
:Then
->A
:Y-1->Y
:prgmXTEMP008
:If (theta)<0
:Y+1->Y
:End
:If K=26
:Then
:4->A
:X+1->X
:prgmXTEMP008
:If (theta)<0
:X-1->X
:End
:If K=34
:Then
:5->A
:Y+1->Y
:prgmXTEMP008
:If (theta)<0
:Y-1->Y
:End
:real(10,1,8
:If K=45 or K=106 // to give me an escape route from anywhere within the game, i.e. the "quit" function on the menu
:Then
:"ZQUIT
:real(10,0,7
:prgmXTEMP007
:real(10,1,7
:real(10,1,0
:Return
:End
:If K=105
:Then
:"ZMENU
:real(10,0,8
:prgmXTEMP008
:real(10,1,8
:End
:If X>12 or X<1 or Y<1 or Y>8
:Then
:M-(X<1)+(X=13)->M
:X-12(X=13)+12(X<1)->X
:L-(Y<1)+(Y=9)->L
:Y-8(Y=9)+8(Y<1)->Y
:"ZMI // "Zee Map Index"
:real(10,0,8
:prgmXTEMP008
:real(10,1,8
:End
:Endc2
ec2
Whoof. That's my walkabout engine.
I also found an oversight in Frodo's special ability that allowed you to make him put the Ring on turn after turn even though he was already wearing it. That's now been cut off. And, out of sheer boredom, I made Gandalf's special attack flash a bunch of random bits of the arena before it actually hits. Now, on to Pippin.
Logged
dinhotheone
LV6
Super Member (Next: 500)
Posts: 410
Rating: +2/-1
The Lord of the Rings for 83+
«
Reply #92 on:
September 03, 2007, 08:36:00 am »
very cool, this game looks like its shaping up to be quite the rpg. good luck with that and your astroscience.
Logged
DJ Omnimaga
Clacualters are teh gr33t
CoT Emeritus
LV15
Omnimagician (Next: --)
Posts: 55943
Rating: +3154/-232
CodeWalrus founder & retired Omnimaga founder
The Lord of the Rings for 83+
«
Reply #93 on:
September 03, 2007, 04:43:00 pm »
What does A and theta do? Because I can't seems to optimize without removing it
Logged
Jeremy Avalon
Guest
The Lord of the Rings for 83+
«
Reply #94 on:
September 03, 2007, 05:27:00 pm »
Theta is the tile number of the square the player tries to move to. If it's anything other than blank, the move is canceled.
A is used to determine which direction of walking sprite to use, because in the tilesheet, they're all right next to each other.
Logged
DJ Omnimaga
Clacualters are teh gr33t
CoT Emeritus
LV15
Omnimagician (Next: --)
Posts: 55943
Rating: +3154/-232
CodeWalrus founder & retired Omnimaga founder
The Lord of the Rings for 83+
«
Reply #95 on:
September 03, 2007, 05:54:00 pm »
Wouldnt you prefer to check if the tile is blank before moving, so the move isnt done if it is? Altough this may not change a lot in speed it would make optimizing the code much easier because instead of doing stuff like (example) If Z=24:X-1->X:If Z=26:X+1->X you can use boolean logic like this: X-(Z=24)+(Z=26->X
Logged
Jeremy Avalon
Guest
The Lord of the Rings for 83+
«
Reply #96 on:
September 03, 2007, 07:23:00 pm »
Hmmm... have to rewrite a lot of code for that...
See, what I tried to do was make it so the move would be made, then any special actions would be triggered (such as the shop):
c1-->
CODE
ec1PROGRAM:ZCOL
:[A](Y+1,X+1->(theta)
:If (theta)=24
:Then
:"ZSTORE
:real(10,0,12
:prgmXTEMP012
:real(10,1,12
:DelVar KDelVar N
:-1->(theta)
:Return
:Endc2
ec2
(just an excerpt)
and then move back. I guess the alternative is to? wait.
Oh my. I know what the problem is. Continuing the code:
c1
-->
CODE
ec1:If (theta)=0 or (theta)=25 or (theta)=26 or ((theta)>31 and (theta)<36) or (theta)=38 or (theta)=39 or (theta)=41 or (theta)=58 or (theta)=60
:Return
:If (theta)=46
:Then
: // didn't write this bit yet
:Return
:End
:-1->(theta)c2
ec2
So I'm running that WHOLE STRING just to make sure the next square isn't a wall. Anything that doesn't make it through this check stores -1 to theta and thus gets blocked... so I guess I'll have to re-code all my sprites. >_< Ouch.
AMENDMENT: I just coded it so sprites 25-35 are all free, changing (theta)=25 through <36 to "((theta)>24 and (theta)<36)", and it's already a bit faster. Amazing how much it helps to actually look for the problem rather than do a rain dance.
Logged
DJ Omnimaga
Clacualters are teh gr33t
CoT Emeritus
LV15
Omnimagician (Next: --)
Posts: 55943
Rating: +3154/-232
CodeWalrus founder & retired Omnimaga founder
The Lord of the Rings for 83+
«
Reply #97 on:
September 04, 2007, 02:35:00 am »
I hopee you can fix it, I'm sure speed increase will be signifiant
Personally if only one tile is walk onable I would just make an If of this one and a condition and an else if it doesnt meet the condition to save space
Logged
Jeremy Avalon
Guest
The Lord of the Rings for 83+
«
Reply #98 on:
September 04, 2007, 03:50:00 am »
Oh, no, see, that's for all the road tiles/bridges/etc. So we've really got twelve walkable tiles right now.
Logged
DJ Omnimaga
Clacualters are teh gr33t
CoT Emeritus
LV15
Omnimagician (Next: --)
Posts: 55943
Rating: +3154/-232
CodeWalrus founder & retired Omnimaga founder
The Lord of the Rings for 83+
«
Reply #99 on:
September 04, 2007, 04:02:00 am »
oh ok
, i hope it can be made faster anyway, you should use boolean logic tho
Logged
Jeremy Avalon
Guest
The Lord of the Rings for 83+
«
Reply #100 on:
September 04, 2007, 07:31:00 am »
Well, I cleaned up the sprites and it's running a little faster, but I have another couple of ideas that I'll apply later this afternoon.
Also, as I keep saying, help with balancing the character stats against the enemies' and against XP would be great.
Logged
DJ Omnimaga
Clacualters are teh gr33t
CoT Emeritus
LV15
Omnimagician (Next: --)
Posts: 55943
Rating: +3154/-232
CodeWalrus founder & retired Omnimaga founder
The Lord of the Rings for 83+
«
Reply #101 on:
September 04, 2007, 07:58:00 am »
great to hear
keep it coming!
Logged
Jeremy Avalon
Guest
The Lord of the Rings for 83+
«
Reply #102 on:
September 05, 2007, 04:51:00 pm »
I've decided that having Pippin's special cause the battle order to need recalculation on-the-fly is too heavy a drain on the limited memory I'm playing with, as well as my limited patience, and I'm changing the function of his special. Instead of simply increasing his Agility (which would really serve little useful purpose anyway), "Hide" now hides him and launches a sneak attack a number of turns later (i.e. at least 1 full round, and the gaps will widen overall as his level increases). You can't make him do it before the game decides he will, but it causes a guaranteed *critical* hit. The idea is to make the ability moderately balanced, since his damage and Agility increase at similar paces.
Which reminds me, does anyone think the other specials are too imbalanced right now?
(If you want to test Aragorn, Legolas, and Gimli, open up LFOTR1 and change items 1, 2, and 3 in that list to 1.)
Speaking of critical hits, they are next on my implementation list, as soon as I re-code Pippin.
In other news, I can't really speed up the walking by much more. It's about on par with RL3 right now, so it isn't TOO bad... but MAN I wish these things ran just 1000Khz faster sometimes.
Logged
DJ Omnimaga
Clacualters are teh gr33t
CoT Emeritus
LV15
Omnimagician (Next: --)
Posts: 55943
Rating: +3154/-232
CodeWalrus founder & retired Omnimaga founder
The Lord of the Rings for 83+
«
Reply #103 on:
September 05, 2007, 05:27:00 pm »
i understnad how you feel, as long as it run fine on my SE (it did, i was just wondering if it did on the reg 83+) i'm fine with it
Logged
Halifax
LV9
Veteran (Next: 1337)
Posts: 1334
Rating: +2/-1
The Lord of the Rings for 83+
«
Reply #104 on:
September 06, 2007, 01:53:00 pm »
Wow...I thought this was dead a long time ago. I am so glad it got revived! And yeah I agree with DJ_O that it only has to run fine on an SE if that's all you can do.
*
Halifax
Logged
There are 10 types of people in this world-- those that can read binary, and those that can't.
Print
Pages:
1
...
5
6
[
7
]
8
9
Go Up
« previous
next »
Omnimaga
»
Forum
»
Calculator Community
»
Other Calc-Related Projects and Ideas
»
TI Z80
»
The Lord of the Rings for 83+