ShootersForever.com Forum Index

GoldenEye 007 Nintendo 64 Community, GoldenEye X, Nintendo 64 Games Discussion
GoldenEye Cheats, GoldenEye X Codes, Tips, Help, Nintendo 64 Gaming Community


Tool for randomising Goldeneye (new version Release 4)
Goto page Previous  1, 2, 3, 4  Next
 
Post new topic   Reply to topic    ShootersForever.com Forum Index -> Q-Lab Hacking Department
View previous topic :: View next topic  
SubDrag
Administrator
Administrator


Joined: 16 Aug 2006
Posts: 6118

 PostPosted: Mon Jul 17, 2017 2:29 am    Post subject: Reply with quote Back to top

You can remove the Japanese text fles to make more room.
 
View user's profile Send private message
K1lo
Agent
Agent


Joined: 10 Jun 2012
Posts: 112
Location: Albert Embankment, Vauxhall

 PostPosted: Mon Jul 17, 2017 3:00 am    Post subject: Reply with quote Back to top

Interesting, I didn't know they were in the NTSC version. That should free up a few bytes anyway. I need to dig into the file table.. thanks for the tip SubDrag Cool
 
View user's profile Send private message
Wreck
Administrator
Administrator


Joined: 14 Dec 2005
Posts: 7197
Location: Ontario, Canada

 PostPosted: Mon Jul 17, 2017 9:45 pm    Post subject: Reply with quote Back to top

Yeah, they're pretty much useless, after all. Perfect Dark has even more, since the PAL version gives players the option to choose from multiple languages. Only English is used in the NTSC North American version, so we also do away with them for PD mods. Surprising how much space that can open up.
 
View user's profile Send private message Visit poster's website
K1lo
Agent
Agent


Joined: 10 Jun 2012
Posts: 112
Location: Albert Embankment, Vauxhall

 PostPosted: Mon Jul 17, 2017 11:51 pm    Post subject: Reply with quote Back to top

I've done a fair bit of internationalised software development before, but I've never looked at Japanese. How many bytes do each character take? I am guessing probably two given the large number of kanji ?

I think there's a reduced simplified form .. I'm not sure if this is what is used in games. Either way, text can really eat up space whether or not each character is single or multiple bytes.

I didn't have a chance to look at this yet but I will come to it.
 
View user's profile Send private message
zoinkity
007
007


Joined: 24 Nov 2005
Posts: 1684

 PostPosted: Tue Jul 18, 2017 7:18 am    Post subject: Reply with quote Back to top

Number of bytes matters on the encoding. Encodings like Shift JIS and EUC JP use two bytes, clumping extensions into related blocks. Japanese chars will be two bytes and ASCII will be one. In U16 all chars are two bytes regardless. UTF-8 is a bit more complicated and will encode Japanese into three or more bytes; i.e.: E296BC for . The leading control char indicates the number of chars following it. Here's a primer on different Japanese encodings.

A variety of PC encodings can be found in N64 titles when they bother to follow an encoding. Oddly, Japanese exclusives will usually forgo an encoding and just use the index for the chars in the font table. They tend to be in some kind of order at least. Incidentally, the encoding for controller pak saves omits kanji and sticks all chars into one byte.

In Goldeneye, there's two different Japanese font sets. Japanese chars were added to the fonts in the order they were encountered in source. The high bit will be set in both bytes. The first, smaller font starts at 8080 and the larger at C080.

Weirdest one I've seen in an N64 title so far was a 12bit one with interlaced nibbles. {`o.0}
_________________
(\_/) Beware
(O.o) ze
(> <) Hoppentruppen!
 
View user's profile Send private message Send e-mail
K1lo
Agent
Agent


Joined: 10 Jun 2012
Posts: 112
Location: Albert Embankment, Vauxhall

 PostPosted: Tue Jul 18, 2017 7:54 am    Post subject: Reply with quote Back to top

Thanks zoinkity, that's useful to know.

zoinkity wrote:

Weirdest one I've seen in an N64 title so far was a 12bit one with interlaced nibbles. {`o.0}


eh? 12bit characters? I mean I guess that's a 25% saving on 2-byte characters but.. weird..
 
View user's profile Send private message
zoinkity
007
007


Joined: 24 Nov 2005
Posts: 1684

 PostPosted: Tue Jul 18, 2017 11:57 am    Post subject: Reply with quote Back to top

Couldn't find the doc before, but the order was:
412 563
In the end couldn't preserve backward-compatibility (reordered to 123 456), but created an escape sequence to jump into a 7bit ASCII stream with a two-bit indicator to unescape (since no whitespace lower than Space was accepted anyway).

By the way, too many programmers are lazy about finding string lengths much less string widths. Way too many titles just use bytelength / static value. Nothing like rewriting all the basic string functions just to center text.
Not just an N64 problem either. The official specs for captioning on HDMI TV streams implements it as #chars in the line divided by the width of the widest character. Yes, apparently they never heard of variable-width fonts. To make matters worse, due to the doc's vagarity that's usually the widest character in the font. Could be as "good" as W or as bad as .
_________________
(\_/) Beware
(O.o) ze
(> <) Hoppentruppen!
 
View user's profile Send private message Send e-mail
K1lo
Agent
Agent


Joined: 10 Jun 2012
Posts: 112
Location: Albert Embankment, Vauxhall

 PostPosted: Tue Jul 18, 2017 1:15 pm    Post subject: Reply with quote Back to top

Dear me that sounds horrendous... oh believe me I know about lazy assumptions when it comes to character length. I was involved in a project to internationalise something a while back and the number of times I had to explain ASCII != UTF-8, ANSI != ASCII, wchar_t != UTF8 etc.. etc..
 
View user's profile Send private message
Wreck
Administrator
Administrator


Joined: 14 Dec 2005
Posts: 7197
Location: Ontario, Canada

 PostPosted: Wed Jul 19, 2017 10:47 pm    Post subject: Reply with quote Back to top

Here's a simpler one: random hats. Those are type "11" objects. Guards tend to wear them in most missions. A way to change which hats they are wearing might be fun. There are berets, fur hats, officer caps, helmets, side caps, and elite headgear to choose from. Pretty sure the model IDs are all grouped together for convenience.
 
View user's profile Send private message Visit poster's website
K1lo
Agent
Agent


Joined: 10 Jun 2012
Posts: 112
Location: Albert Embankment, Vauxhall

 PostPosted: Wed Jul 19, 2017 11:53 pm    Post subject: Reply with quote Back to top

Wreck wrote:
Here's a simpler one: random hats. Those are type "11" objects. Guards tend to wear them in most missions. A way to change which hats they are wearing might be fun. There are berets, fur hats, officer caps, helmets, side caps, and elite headgear to choose from. Pretty sure the model IDs are all grouped together for convenience.


Way ahead of you, I've been busy refactoring and improving the tool. As part of this hats can now be randomised (although still working on adding hat entries for entities which don't have the to begin with - holding off on this until I can understand the file table properly as it will increase setup size) along with some standard objects (i.e. some crates will change between wooden, metal and oil drums randomly) and starting weapons.

All of this will be in the next version. Very Happy
 
View user's profile Send private message
Wreck
Administrator
Administrator


Joined: 14 Dec 2005
Posts: 7197
Location: Ontario, Canada

 PostPosted: Sun Aug 06, 2017 6:45 pm    Post subject: Reply with quote Back to top

Just wanted to see if you were still working on updates for this tool? Please do take your time with it, as I don't intend for you to hurry out a new version. Simply knowing that you're continuing on it when you have free time is enough for now. Smile
 
View user's profile Send private message Visit poster's website
Graslu
Agent
Agent


Joined: 15 Dec 2016
Posts: 119
Location: Almeria, Andalucia, Spain

 PostPosted: Mon Aug 07, 2017 5:37 am    Post subject: Reply with quote Back to top

Hey K1lo! Yesterday I streamed the randomizer tool with a different random seed every row (5 levels). It was quite a challenge, specially when Bunker 2 had tons of guards with Auto Shotguns but I'd like to leave some feedback.

I think it needs to be more... random. Out of the around 10 randomized ROMs I had, more than half had AR33s or RCP90s on them, and the rest CMags and Auto Shotguns. I don't know if this is due to any limit there is, but it'd be cool if they changed every level so it's not too repetitive, or at least give a wider variety and more chances for other guns to appear.

Through the whole playthrough I also only had one encounter with Oddjob on Dam and after that no more special encounters.

Great work on the tool and I'll be waiting for future udpates! It was fun to play and I'll definitely do it again with more random seeds beforehand.
_________________
You can't win.

YouTube: https://www.youtube.com/c/Graslu00
Discord: https://discord.gg/tksttVC
 
View user's profile Send private message
youb
Agent
Agent


Joined: 19 Aug 2017
Posts: 4

 PostPosted: Sat Aug 19, 2017 4:41 am    Post subject: Reply with quote Back to top

Hi,
very great job !
this make me replay (again and again) it.
Tested on my ED64 (flash cartrigde) on a real N64 and this works !
awesome Razz

ps: do you think to make this on GE-X (don't know if regular version will be a probleme)
a GE-X coop with randomised weapons and eny would be so awesome !
 
View user's profile Send private message
K1lo
Agent
Agent


Joined: 10 Jun 2012
Posts: 112
Location: Albert Embankment, Vauxhall

 PostPosted: Sun Aug 20, 2017 9:03 am    Post subject: Reply with quote Back to top

Hey graslu! Youtube suggested your video to me before I even saw this post which is a little scary Razz

Thanks for the feedback, let me answer some of the points you raised.

graslu wrote:
I think it needs to be more... random. Out of the around 10 randomized ROMs I had, more than half had AR33s or RCP90s on them


From watching your video I started thinking maybe I should randomise on a per level basis. Currently I pick a weapon theme at random and apply that throughout the whole game with some minor super weapon exceptions.

graslu wrote:
I and the rest CMags and Auto Shotguns. I don't know if this is due to any limit there is, but it'd be cool if they changed every level so it's not too repetitive, or at least give a wider variety and more chances for other guns to appear.


Yeah.. I noticed it can get a bit repetitive as you say.

graslu wrote:
Through the whole playthrough I also only had one encounter with Oddjob on Dam and after that no more special encounters.


There are usually between 1 - 3 encounters per randomised rom, however this is weighted unevenly between levels. Levels with more guards have a higher chance of getting a random special encounter.

I wanted it to be random and unexpected, however I think I'll tweak this to randomly pick 2 or three levels for these characters rather than each enemy having a fix (low) chance of being converted into one.

graslu wrote:
Great work on the tool and I'll be waiting for future udpates! It was fun to play and I'll definitely do it again with more random seeds beforehand.


Thanks a lot! Today I put finishing touches on randomising starting weapons and ammo as well as playing around with a few other options. The improved code now finds every enemy, weapon, object etc in the game enabling it to be randomised. The currently released versions didn't find 100% due to the way I was searching for them previously. The except to this is spawned guards from alarms, this is on my todo list for later.

The last three weeks I've been away most of the time so I've not made the progress I was hoping to, however I'm working on it again now. Not sure if I'll make the exact date of the Goldeneye release anniversary but we shall see.
 
View user's profile Send private message
K1lo
Agent
Agent


Joined: 10 Jun 2012
Posts: 112
Location: Albert Embankment, Vauxhall

 PostPosted: Sun Aug 20, 2017 9:07 am    Post subject: Reply with quote Back to top

youb wrote:
Hi,
very great job !
this make me replay (again and again) it.
Tested on my ED64 (flash cartrigde) on a real N64 and this works !
awesome Razz

ps: do you think to make this on GE-X (don't know if regular version will be a probleme)
a GE-X coop with randomised weapons and eny would be so awesome !


Thanks youb! Glad you're enjoying it - feel free to share some pictures or video of it running on your ED64, I'd love to see Very Happy

I actually have one somewhere but it's in storage so I've just been testing my randomiser in an emulator as it speeds up the dev cycle, however there's no reason my changes would not work on real hardware. I'm looking forward to trying to at some point too.

I was thinking about non-standard ROMs recently. I don't enforce a checksum check, only that it is the NTSC rom, has the correct ROM ID and is not byteswapped. In theory any single player patches should be supported and randomised also!

The problem with this might be starting equipment as I will only test my changes don't break the stock game. If a level modification gives certain starting equipment which is essential for the objectives within the game, the randomiser can't know ahead of time about this. Confused
 
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    ShootersForever.com Forum Index -> Q-Lab Hacking Department All times are GMT - 8 Hours
Goto page Previous  1, 2, 3, 4  Next
Page 2 of 4

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

Cobalt 2.0 BB theme/template by Jakob Persson.
Copyright © 2002-2004 Jakob Persson


Powered by BB © 01, 02 BB Group

 


Please Visit My Other Sites: GoldenEyeForever.com | GrandTheftAutoForever.com

Got kids? Check out my Dora The Explorer site with games and coloring pages!

Our forums feature Nintendo 64 games, GoldenEye 007 N64 New Maps and Missions, GoldenEye Cheats, N64 Emulator, Gameshark, GoldenEye Multiplayer and more!

[ Privacy Policy ]