Author |
Message |
|
Justin W. Shattered Silence
Advanced Member
Joined: 24 May 2003 Posts: 429
|
Posted: 12 Dec 2005 12:35:06 pm Post subject: |
|
|
Hey guys! Just thought I'd bring you all up to speed on one of my unannounced projects.
Codex 2 has been in development now for the last few months. Progress has been slow mind you do to a heavy workload and very high stress levels.
So far I have rewritten all of the original Codex to make it even faster and so that incorporates almost all of the old commands. Here's where you guys come in!
I need some constructive input on one of the features I'm adding into Codex 2.0
Codex 2.0 is taking a step away from the painstakingly slow sprite method I used before and will come with it's own tile map editor and tile editor. The editors will be able to be removed from the calc once they are no longer needed to edit your maps.
This in turn means the ability to display your maps in an instant, and a quick and user friendly way to edit your maps/tiles.
What I need from you guys.
1) What is the most appropriate tile size. 8x8, 16x16?(choosing a standard will make the program size smaller.
2) What would be the most appropriate command syntax as you will need to supply the tilemap and tileset to display.
3) How do I make it so that you are still able to do hit detection.
I haven't done any basic in like 3 years so I need some input from you basic programmers. |
|
Back to top |
|
|
Weregoose Authentic INTJ
Super Elite (Last Title)
Joined: 25 Nov 2004 Posts: 3976
|
Posted: 12 Dec 2005 01:07:11 pm Post subject: |
|
|
- My choice is 8×8 pixels. The other option would only allow a 4×6 grid of characters.
- Could the syntax be any built-in token or function followed by custom arguments? What I'm thinking is to be able to use the [font="courier new"]T
token (for tile, perhaps), which would never realistically appear after a new line otherwise, making that part of the rendering easy. I think it would be a good choice: Quote: [font="courier new"]:ClrDraw
:T16,24,A,…
:T18,26,B,…
…
The cheapest way to do hit detection is with [font="courier new"]pxl-Test(), so make sure you leave that an option as it would be useful to all of us. Other possibilities involve reading the elements in strings, lists, matrices, and so forth, given the positions expressed by other variables. But, as the method is dynamic in itself, I don't think Assembly would offer that much more assistance in this regard. I could be completely mistaken. :biggrin:
I may be entirely off-track with these concepts. Could you explain your needs in more detail?
Last edited by Guest on 12 Dec 2005 01:10:56 pm; edited 1 time in total |
|
Back to top |
|
|
elfprince13 Retired
Super Elite (Last Title)
Joined: 11 Apr 2005 Posts: 3500
|
Posted: 12 Dec 2005 01:17:13 pm Post subject: |
|
|
For tilemaps, I like using Matrices for doing hit detection, although they get rather large.....have something like that so a user can get the number of the sprite/tile at a given location in the map.
do not use real() for sending commands, this is one of the things that ticks me off the most with xLib is that it interferes w/ Omnicalc and Symbolic. I liked the syntax from Codex 1. however if you are making it an application pick a different command to intercept.
perhaps allow the user to specify dimensions in a multiple of 8.....otherwise use 8*8 as the standard |
|
Back to top |
|
|
Justin W. Shattered Silence
Advanced Member
Joined: 24 May 2003 Posts: 429
|
Posted: 12 Dec 2005 01:30:08 pm Post subject: |
|
|
The size thing is pretty straight forward.
As for the syntax, this will still be an assembly program therefore I will still use Ans as the input as before. In order to display your tilemap I was thinking of something along the lines of.
:"D.Map.Tileset
:Asm(prgmCODEX2
The reason being is you would be able to create a full screen tilemap using a select tileset with the editor.
As for hit detection.
The reason I ask this is the above mentioned method would make it hard to detect if the tile you're walking towards can be walked over or not, as the tilesets and maps would be stored as appvars so as to save alot of space that is wasted by matrices and lists. |
|
Back to top |
|
|
elfprince13 Retired
Super Elite (Last Title)
Joined: 11 Apr 2005 Posts: 3500
|
Posted: 12 Dec 2005 02:18:46 pm Post subject: |
|
|
Pxl-Test( only works well if you know you cant walk into pixels, but if you test a matrix, you can find a numbers position in a string using sub and test if it is walkonable or not by something like
Code: :"Tilemap.NUMOFTILEAT.{1,10
:"Asm(prgmCODEX
:Ans->A
:If sub(Str1,A,1)=W
:Then
:Disp "walkonable
:Else
:Disp "notwalkonable
:End
something like that would be perfect. |
|
Back to top |
|
|
kalan_vod
Advanced Member
Joined: 04 Sep 2005 Posts: 446
|
Posted: 12 Dec 2005 02:38:27 pm Post subject: |
|
|
Well running a asm program from basic is very slow, so make it an app? Also I didn't know you made codex! kudos . |
|
Back to top |
|
|
0oruneo0
Member
Joined: 01 May 2005 Posts: 112
|
Posted: 12 Dec 2005 02:58:41 pm Post subject: |
|
|
Yea... that was always my one complaint with CODEX's spriet routine, using the Asm( command made it sloooowwwwwww. |
|
Back to top |
|
|
Justin W. Shattered Silence
Advanced Member
Joined: 24 May 2003 Posts: 429
|
Posted: 12 Dec 2005 03:34:41 pm Post subject: |
|
|
kalan_vod wrote: Well running a asm program from basic is very slow, so make it an app? Also I didn't know you made codex! kudos .
[post="64191"]<{POST_SNAPBACK}>[/post]
Thankyou
0oruneo0 wrote: Yea... that was always my one complaint with CODEX's spriet routine, using the Asm( command made it sloooowwwwwww.
[post="64196"]<{POST_SNAPBACK}>[/post]
That's precisely the reason I want to kick it into high gear as well as maintaining a userfriendly atmosphere. It was also slow due to the fact that it required constant input from the basic program, so it was constantly loading and unloading the asm program everytime you displayed each sprite.
The new way, the program would display the entire map in one go, thus saving thousands of cc and displaying the map almost instantaneously.
As for the Matrices thing. I can do it like that, however it will cause the maps to be considerably larger due to the fact that matrices use floating point numbers which if I remember correctly take 9 bytes for each element. It also will make codex bigger as matricies can be difficult to access using assembly when trying to read from a complex variable and displaying the corresponding tile to the screen consecutively.
Last edited by Guest on 12 Dec 2005 03:38:27 pm; edited 1 time in total |
|
Back to top |
|
|
bananaman Indestructible
Calc Guru
Joined: 12 Sep 2005 Posts: 1124
|
Posted: 12 Dec 2005 04:43:56 pm Post subject: |
|
|
I like 12 by 12 tilemapping with 2 blank pixels on the top and bottom. I know this is strange and not a nice multiple of 8 but it would be awesome if someone made a tilemapping feature for doing it that way. |
|
Back to top |
|
|
Liazon title goes here
Bandwidth Hog
Joined: 01 Nov 2005 Posts: 2007
|
Posted: 12 Dec 2005 04:45:34 pm Post subject: |
|
|
Sprites: 8x8, though I haven't found a good looking full body one. |
|
Back to top |
|
|
Justin W. Shattered Silence
Advanced Member
Joined: 24 May 2003 Posts: 429
|
Posted: 12 Dec 2005 04:48:42 pm Post subject: |
|
|
Here's my thought. Have the map tiles at a set standard of 8*8 but have the character sprites be able to be displayed seperately and at a variable size. |
|
Back to top |
|
|
axcho
Active Member
Joined: 09 Nov 2004 Posts: 555
|
Posted: 12 Dec 2005 05:54:30 pm Post subject: |
|
|
So why are you doing this if xLIB is already out there? I'm just curious; go ahead if you think it's a good idea. Since tr1p1ea told me that he does not plan to add a CAT display routine to xLIB, would you be willing to put it in Codex?
I would stay away from matrices if I were you. Not only are they inefficient memory-wise, they are a lot slower to access than pxl-Test(). Most programs that use matrices for storing maps could be improved by using a different method, unless they are on the home screen or need to use the special matrix functions.
It might be nice to be able to set the tile size to accomodate the different tastes shown here: 6x8, 8x8, 12x12.
Quote: I like 12 by 12 tilemapping with 2 blank pixels on the top and bottom. I know this is strange and not a nice multiple of 8 but it would be awesome if someone made a tilemapping feature for doing it that way. What if you put 4 blank pixels on the bottom and use it for a stat bar? Try using YUKI's Nine-Dots Minimum Font, or my variation on it:
[attachment=409:attachment] |
|
Back to top |
|
|
kermmartian Site Admin Kemetech
Calc Guru
Joined: 20 Mar 2004 Posts: 1220
|
|
Back to top |
|
|
elfprince13 Retired
Super Elite (Last Title)
Joined: 11 Apr 2005 Posts: 3500
|
Posted: 03 Feb 2006 11:15:30 pm Post subject: |
|
|
has any progress been made on this? |
|
Back to top |
|
|
BatBlaster
Member
Joined: 10 Oct 2007 Posts: 160
|
Posted: 14 Oct 2007 11:34:37 am Post subject: |
|
|
Oh, sounds nice. Too bad my computer is having hookup problems.
With my TI-84+ |
|
Back to top |
|
|
JoostinOnline
Active Member
Joined: 22 Aug 2007 Posts: 559
|
Posted: 14 Oct 2007 12:33:53 pm Post subject: |
|
|
BatBlaster wrote: Oh, sounds nice. Too bad my computer is having hookup problems.
With my TI-84+
[post="114419"]<{POST_SNAPBACK}>[/post] Why don't you make a new topic so we can try to help. I don't want to get offtopic (like I am right now :blush: ). |
|
Back to top |
|
|
elfprince13 Retired
Super Elite (Last Title)
Joined: 11 Apr 2005 Posts: 3500
|
Posted: 14 Oct 2007 02:31:54 pm Post subject: |
|
|
BatBlaster wrote: Oh, sounds nice. Too bad my computer is having hookup problems.
With my TI-84+
[post="114419"]<{POST_SNAPBACK}>[/post]
this is what we like to call a Necropost
please do not make them without good reason |
|
Back to top |
|
|
vuurrobin
Advanced Member
Joined: 09 Aug 2006 Posts: 428
|
Posted: 20 Oct 2007 09:57:12 am Post subject: |
|
|
I think it is save to asume that this is dead...
can't we put all the dead featured projects in a different section, so new members know which projects are dead and which projects aren't? |
|
Back to top |
|
|
|