Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Den

Pages: [1] 2 3 4 ... 25
General Discussion / Re: How to edit / hack FFL2
« on: Yesterday at 11:45 PM »
Hex editors are used to modify any file.

0x means the number that follows is hexadecimal.

"Addresses" tab in the spreadsheet has the start and end to the absolute locations in the ROM. in this case
3798037eb4monster abilities listing

Then the skills list values in the monster table point to the relative location within the same memory bank. So 0x7e7f will point to 37e7f absolute location in the ROM.

Magic: the Gathering / Esper Skies
« on: 2019-Jan-15 04:34 »
Apprentice MTGO
 Esper Skies
// 12 Creatures
4 Pteramander
4 Siren Stormtamer
4 Dimir Spybug

// 20 Lands
3 Island
4 Watery Grave
4 Drowned Catacomb
4 Hallowed Fountain
4 Glacial Fortress
1 Godless Shrine
// 28 Spells
4 Opt
2 Duress
4 Mission Briefing
4 Thought Erasure
4 Depose // Deploy
4 Discovery // Dispersal
4 Warrant // Warden
2 Sinister Sabotage
// Sideboard
2 Duress
4 Negate
3 Consecrate // Consume
3 Deputy of Detention
2 Shalai, Voice of Plenty
1 Nightveil Predator

Esper aggro-control with focus on Surveil and filling graveyard with instants and sorceries. Finishers are Pteramander, Dimir Spybug, Warden--all of which can become dangerous 4/4 or 5/5 flyers; or a bunch of flying Thopter tokens via Deploy.

The spells perform one or more of these:

- surveil to improve your next draws
- control ala countermagic, discard, removal
- tempo to slow down opponent
- protection via counters (Siren Stormtamer), hexproof
- creature tokens as finishers

The Azorius split cards Depose // Deploy and Warrant // Warden are amazing. Early they can be tempo, and later they create tokens to finish the game. So they count as creatures, but also fill the grave for Pteramander. Furthermore, they can be flashbacked with Mission Briefing--it's absolutely sick. Recast Deploy to gain more Thopters and gain huge amounts life; or recast Warden for another 4/4 flying vigilant.

Magic: the Gathering / [STD] IXA - DOM - GRN
« on: 2019-Jan-15 04:33 »

Magic: the Gathering / Re: [MTG] Online Play ?
« on: 2019-Jan-14 05:21 »
First of all, the population of this Magic forum is really just myself. So you may be disappointed to find not much conversation here. Nowadays I mostly post about my own card designs and occasional deck brewing. (Particularly blue decks.)

I don't really play (online or paper) CCGs any more. For various reasons. But if I would, I'd play HexTCG over Magic. Because the former fully uses advantages of the digital format. Thus more innovative, bolder designs. Magic design will always be hindered by paper, physical version. (Plus I really hate the Modern frames; such an eyesore. So hard to look at especially on the screen.)

But that's just my opinion. Don't let that stop you from enjoying whatever you find fun.

General Discussion / Re: How to edit / hack FFL2
« on: 2019-Jan-14 04:24 »
HxD is what I use.

Max items are 255 (0xFF)

Memory banks are grouped by blocks of 0x4000 bytes. So offsets jumps are written from 0x4000 to 0x7fff, thus will tell you the relative offset within the same block. Find tutorials for GB hacking that explain it in details.

Ex. One of the tab in the spreadsheet gives info regarding the absolute location in the ROM pointing to the start of the skills list for monsters (which includes playable characters). So all skills lists will be stored inside the same block, and the offset gives relative location inside that block. Thus Human M skills offset 0x7e7f gives the relative location within that block.

So I came back after a while and see that beakl 15 has replaced beakl 9 as the recommended layout. It seems like it is very similar to beakl 9, and most of the changes are to a few character in the marginal positions on the left hand. Can I ask anyone who has used both whether they think the switch is worth it?

The benefits of 15 over 9 are:
 less movement to far index column
 less same finger
 better rolls
 better bigrams and trigrams

Guestbook / Re: Guests : Post Away!
« on: 2019-Jan-11 21:52 »
Will you be updating the romhacking page with the latest version of the FFL2 hack :

I don't remember uploading to that site.

General Discussion / Re: How to edit / hack FFL2
« on: 2019-Jan-11 21:38 »
 just use hex editor, the spreadsheet where I log my findings about ROM data, and the combat script that was reverse engineered.

Does anyone here know if there's a way to configure the ADNW optimizer to use only one shift key?

Not with command-line options or layout config files alone. One could try altering the source code, but note the shift keys are tightly intertwined with the analysis results.

I thought some might find this useful.  I created a BEAKL-15 layout for the Ergodox EZ keyboard.  I'm coming from 12 years of typing on the Dvorak layout, and recently decided to give the BEAKL layout a go.  The various keyboard layout comparisons were very promising.  As soon as I am 100% confident with BEAKL-15, I'll remove the Dvorak base layer and have it as a pure BEAKL-only layout.

So far I am really enjoying the BEAKL-15 layout. I'm also finding the symbol layer very convenient for programming.


Welcome. I think I saw some links to your Ergodox configs before. You should compare notes with other Ergodox users here.

I'm happy to hear about your positive experience with BEAKL 15, including the punc layer. You even use the modified number row (40123 76598).

For that matter, I might consider altering it to 32104 95678. Left side gets better inward rolls when typing 10, 20, 30. Right side 567 seems most common to me, and I want to keep 56 on index and middle fingers.

Magic: the Gathering / Re: Card Search Page and API
« on: 2018-Nov-20 19:06 »
; added sets ; up to Guilds of Ravnica
; added keywords ; jump-start ; mentor ; surveil


; Earth and Space genres ; Emblem type becomes Paradigm


; PW rules box abilities height proportional to text length
; Scenes rules box, loyalty like Planeswalkers


; resize linear texts
; security fixes


; rules text ; bold text between angled brackets <>
; Vogon frames ; fix leveler P/T not separated


; Vogon HD ; Planeswalker art full height, with mask on bottom
; Vogon HD ; Planeswalker rules box and starting font size shrunk


- idea for 3 color manland. (surprisingly this has not been done before!)
- part of cycle that includes other 3-color combinations.

- Gwu - 4/4 - flying vigilance hexproof
- Wub - 3/3 - flying lifelink indestructible
- Ubr - 1/4 - flying menace switch p/t
- Brg - 5/3 - trample first strike deathtouch
- Rgw - 3/3 - trample vigilance double strike

Programming / Re: Versatile Playlist (VPL)
« on: 2018-Nov-04 19:22 »

; vpl ; added property ; fn ; sequential numbers in file names
; vpl ; added property ; pad ; digits to pad for fn


; manacost accept any letter
; added Pokemon genre and energy symbols:

{c} Colorless
{d} Darkness
{o} Dragon
{y} Fairy
{f} Fighting
{r} Fire
{g} Grass
{l} Lightning
{m} Metal
{p} Psychic
{w} Water


` leveler cards under Vogon HD and Vogon Full Art frame ` P/T and levels separated by double semicolon ;; ` level values set between brackets [](){}
` hints for leveler

see examples in attachments

2008/10/14 - 15

; alter cardfuncs.php functions to accept arguments as arrays
; remaining frames into OOP classes and Imagick
; transparent images for FPM, Full Art


; options hasshadow renamed to shadowcolor ; default FALSE
; Full Art artifact wrong filename

Magic: the Gathering / Vogon Full Art : Glorify the Art
« on: 2018-Oct-11 03:02 »
Here the full art version. The focus is the art, so the box for rules text is shrunk and the margins are made transparent.

Just like the regular Vogon frame, the art is well-supported by the surrounding elements. (Unlike the standard Magic frames, where the card type box intrudes and vandalizes right through the center of the art.)

See examples in attachments.

Test the new frame at . Select Frame => Vogon Full Art, fill in other stuff, and press submit button.

You have valid concerns. But as you said, mostly we are used to Magic's standard layout due to habit, not necessarily because it's optimal.

The flow of Magic card is all over the place. You have to scan every corner of a card in order to receive the most critical informations. Card name and card type starts on the left, then zigzag your eyes all the way to the right edge for the mana cost and P/T. That excessive unnecessary movements. Overall the frame feels constricting, convoluted, and disorderly. (Not to mention the art feels boxed in by the intrusive bars above and below; addressed below.)

Reading mana is also a matter of habit. The most popular cards played in history--poker cards--have their symbols in the left edge vertically. Because that's the most optimal arrangement and location when fanning the cards in hand. Hence many other CCGs have also adopted this design of putting costs on the left edge downward. Even MaRo admitted he would have done it this way if they could start over.

My layout the important data is found on the top row and the left margin. Thanks to your input, I have now put card type icons on the top left corner, like Futureshifted frame. Now, you can get all the major data from just the top and left edges of the card. This makes it easier to sort and arrange cards--such as cascaded or fanning to reveal not more than the top and left edges of each card, by which you can see Card name, Mana Cost, Card Type icon, P/T, and Loyalty. Even online games including MTGO cascade or tile them suchly, and my layout is way more effective than official frames for this purpose.

In other words, I can hide 90% of a card, and still be able to acquire four important pieces of information from that card. In comparison, you can get at most two important data pieces from standard Magic card when obstructed in the same manner.

With even, plain bars around the art, it feels well supported and celebrated. Like a good physical art frame, it doesn't try to clash with the art piece, but rather allow the art to dominate its space. Thus the artwork stands out more--despite its imperceptible size reduction.

I too realize people don't like to read words at an angle; it can be jarring. But frankly, subtype is only secondary information that has little or no impact in most games. When it most matters is probably during deck building. As such, rotating them outside of a match should not be distracting to yourself or opponent. That's really the only major issue with my layout. But a worthy sacrifice to improve every other area by leaps and bounds.

Magic Set Editor (MSE) template for Vogon HD:


- bitbucket repo -


- improve Vogon HD aesthetics - land - seams - blend - type icons


- PW abilities accept more bracket types - [](){} or bracketless


- vertical mana - don't reverse arrangement - instead user should use reverse notation in input; e.g. should be new standard notation
- genre and subtypes update immediately on element load - no more waiting for body onload


- new frames: Vogon Full Art - art takes entire card


; improve cardimage_makeLinearText() ; accepts array as argument ; added shadow option ;
; reorganize Frame dropdown selection ; Vogon HD and Full Art near the top
; Vogon Full Art ; shrink rules text box for planeswalkers


; Vogon Full Art ; new method of compositing text ; write text on temporary image ; composite using imagick::COMPOSITE_LUMINIZE
; fix Vogon Full Art PW flavor text vertical alignment
; shrink Vogon Full Art rules text initial font size
; cclist and ccrand show 12 cards


; change Vogon Full Art font for rules text ; Muli regular and Cantarell italic ; sans serif ; less aliasing
; PW rules text starting font size proportional to total (abilities + flavor texts)

Sample cards made in Vogon HD frames. See attachments.

Introducing Vogon HD card frames: high resolution frames: more room for everything

As the creator of one of the earliest online card creator website (, over the last decade I observe many shortcomings of the modern Magic frames (actually I always detested them since inception), and other frames in general. Based on the actual usage in official and home-made cards, they desire more room to fit long card names, long card types, long rules and flavor texts, long mana costs, and even long stats (in place of power/toughness).

I generally observe these issues:

1) Rules box is too small to fit the verbose text that people tend to input. Furthermore, wide text box wastes a lot of horizontal space; many lines do not take up the entire width, or even half the width. Also consider that each additional ability requires additional rows, not necessarily a wider box.

2) Card names overlap with mana cost. These two properties are in inverse proportion and invites conflict.

3) Card types can become too lengthy when all kinds of supertypes and subtypes are tacked on. Also the set icon obstructs the right end of the card type.

4) P/T box is tiny and confining. Even for Magic's simplified stats, it looks claustrophobic. Moreover, custom card creator apps are not only used for custom Magic cards, but also for other games and nongame content. These tend to put larger numbers and stats; such as stats starting in the 100s or 1000s. ex 9000/9000 will not fit in the wee P/T box.

5) Each Planeswalker's additional ability demands exorbitant vertical dimension.

6) Hard to discern and sort cards by color. Borders too thin, text background pastel too light and similar. When zooming out such that card images are small, it's very hard to tell one color from another with the modern Magic frames. One of the reasons I hate looking at them (especially on MTGO, hurts my eyes).

Thus I sought out to create my own custom card frames that will match the needs of custom card creators. These are my solutions:

1) Rules box will have bigger area than most card frames, and be taller than it is wide. This allows more lines, thus more abilities and paragraphs. This minimizes the need to reduce the font size in order to fit all the text inside the box, for better legibility. Tall over wide is also more aesthetically pleasing to read.

2) Mana cost is moved to the left margin and arranged vertically downward. This move allows the card name to fill the entire top row; also names are centered. Mana cost can now be much longer without worrying about obstructing the name at all.

3) Card type is spanned along the entire right margin from top to bottom, so you will not likely run out of space for complicated card types. This text is turned 90°. The set icon is stowed out of the way in the bottom right corner.

4) P/T or related stats own the left margin's bottom half. Plenty of room for stats for Magic and non-Magic games. This text is turned 90°.

5) Planeswalkers will welcome the taller rules box. Easily accomodates 3, 4, 5, or more abilities neatly without sacrificing readability, nor feel cramped.

6) Easy to tell colors apart. Colored borders are thick, thus easy to discern and sort cards by color when far away (in real life) or zoomed out and small (on screen).

Disadvantages of Vogon HD frames:

1) Slightly smaller arts.

2) Angled texts.

3) Takes time to accustom.

Here, view the sample cards created with the new card frames, dubbed Vogon HD:

It is a work in progress. I'm not an artist, so these look pretty bland. If any artist wants to help improve the aesthetics, feel free to download the GIMP or PSD file that you can work on:

Test the new frame at . Select Frame => Vogon HD, fill in other stuff, and press submit button.

Magic Set Editor (MSE) template for Vogon HD:


- new page to showcase random cards:


- new frame: Vogon HD: large, high resolution, more space for texts, including card name, type, rules, and P/T. mana vertical on top left. P/T at bottom left margin. set icon at bottom right corner. work in progress. see examples in attachment.

- converted to OOP classes: classicshift, vogonhd


- ignore () parentheses in manacost


- add delay timer to cclist.php to mitigate 503 Service Unavailable in Firefox, Chrome


- added aliases:
= @dcd@ = deals combat damage

- font for card name, type, artist, creator: Fondamento
- font for power/toughness: Amiri
- playing card frame: mana cost vertically : added watermark :
- FPM frame: reverse mana cost order : center card name
- tweak artist and creator texts
- replace card types for Earth genre: Villain, Power (were Conspiracy, Phenomenon)

Pro-tip: Choose Earth genre to get types like "Super Villain", "Super Power",  "Super Villain Power".


- form redesign: dropdown selectables: color, border, frame, symbols
- added choice of symbols (mana aesthestics)
- reorganize folders: fonts, symbols
- new mana symbols: 'f' for infinity, 'k' for planar chaos

already looks better than qwerty for 1-finger typing and probably 2-finger, too.

i never worked with MTGAP


- added supertype: Host
- changed Space supertype: Elite -> Mega


- Agnomic = idiot, layperson
- Duyu Gnoumi = legendary Gnome
- Gnomish spells may have 'gnom' base = to know


- the cost is {c}{c}{u/p}
- the dialog is from my favorite sitcom "Yes, Dear". the couple is Kim and Greg Warner, played by Jean Louisa Kelly and Anthony Clark, respectively..

Magic: the Gathering / Re: Card Search Page and API
« on: 2018-Sep-13 13:30 »
- All sets up to Commander 2019
- Data source from mtgjson
- Card link to scryfall (was
- Upgrade to PHP 7.2

- link to support forums point to this topic page

- update keywords
- sort results alphabetically


- added frames: classicshift (=default frame), CBG Horizontal (good for sideways card, long texts, vertical arts, and PWs)
- card type font: Kurale


- font for card name, type, P/T: Arima Madurai (bold) (most frames), Righteous (CBG Horizontal frame)


- added card types: Elite, Hero, Conspiracy, Phenomenon. Also Magical and Super for Earth genre.

Pro-tip: You can get "Super Hero" on the type line by choosing Earth genre.

- remove emdash if no supertype and type


Xayvir, Game Designer

Famous Paragon - Xayvir
[+1:] Exile the top card of your archive. Create an agent token with power and toughness equal to the exiled card's converted energy cost.
[-1]: Draw three cards, then put two cards from your hand on top of your archive.
[-9]: Search your archive for any card and exile it, then shuffle. Copy that card three times and deploy them without paying their energy costs.

Opera Mobile:
If you experience constant crashes, try going into about:config and disable Automatic RAM cache and disk cache.

List of aliases. Enclose alias on the left column between two @@ symbols. For instance, @ett@ in rules text will become 'enters the battlefield tapped'. Some aliases will take a variable. For instance @dd2@ becomes 'deals 2 damage'. Some aliases have both lower- and upper-case versions.

 gy  graveyard
 bf  battlefield
 lib  library
 syl  search your library
 Syl  Search your library
 pt  power and toughness
 ias  instant and sorcery
 ios  instant or sorcery
 to  target opponent
 To  Target opponent
 tc  target creature
 Tc  Target creature
 tcp  target creature or player
 tcpw  target creature or planeswalker
 tcy  target creature you control
 Tcy  Target creature you control
 tco  target creature an opponent controls
 Tco  Target creature an opponent controls
 tp  target player
 Tp  Target player
 tpw  target planeswalker
 youpw  you or a planeswalker you control
 anyt  any target
 ec  each creature
 Ec  Each creature
 ecy  each creature you control
 Ecy  Each creature you control
 cy  creature you control
 cys  creatures you control
 Cys  Creatures you control
 cmc  converted mana cost
 et  enters the battlefield
 ett  enters the battlefield tapped
 uet  until end of turn
 Uet  Until end of turn
 dcd  deals combat damage
 dd([0-9xyzXYZ]+)  deals $1 damage
 g(\+|\-)([0-9xyzXYZ]+)  get $1$2/$1$2
 gs(\+|\-)([0-9xyzXYZ]+)  gets $1$2/$1$2
 emblem  You get an emblem with "
 upkyou  At the beginning of your upkeep
 upkopp  At the beginning of each opponent's upkeep
 upkall  At the beginning of each player's upkeep
 endyou  At the beginning of your end step
 endnext  At the beginning of the next end step
 ctr(.*)  put a $1 counter on
 Ctr(.*)  Put a $1 counter on

Use KLA 3 for stable usage without experimental features.

Does KLA strongly favor the right hand?

yes. left hand 1.54 times more effort cost.

How does KLA calculate word difficulty?

combination of longest consecutive karacters on same hand (bad) and most words typed in home block (good).


- converted Planeswalker frame to Imagick
- centered rules text vertically


- set timeout for art URL


- Planeswalker frame to accept nonloyalty abilities
- Planeswalker frame to accept any amount of abilities
- flavortext emdash
- set rules text font to amiri-regular
- fix apostrophe in cardnames in database
- remove duplicate cardnames in database
- cardname font: Kurale


- more spacing between rules and flavor texts
- trim extraneous newlines and whitespace
- support watermark


- fix mana symbols cut off
- prevent recursive art
- fix finally really fit long text inside box


- converted Future frame to Imagick
- Unemploy word wrap to find font size. Reiterate whole texts word by word. Slower, but should be more consistent in outputting biggest text size that fits the text box.


- sanitize query
- aliases as replacement strings (between two @@ symbols)


- text render: early escape when lettery exceeds textboxheight, instead of processing entire text
- increase initial rules text size
- separate instructions page:


- moved alias replacements to client side javascript

Consider dominant hand should be able to handle more keys with deftness.

Code: [Select]
 yui   lcd
 e_a  hrtsp
 , .   mgf
    o n

Here right hand has access to 50% more keys. Note W is on the number row middle finger. Note left hand has no keys for pinky nor inside index column. Nevertheless left hand usage is higher than right due to the top 2 most common characters and top 5 of 6 all on the left.

Consider using CapsLock to access the punctuation layer.
1. US keyboards don't have AltGr key.
2. Will not interfere with AltGr for international kbs.
3. Easy to hit CapsLock on ANSI/ISO kbs.

J is very common in English names. Can't be called the best layout if common names are hard to type.

For that matter, list of names should be another special category of corpus to consider (just like source code.)

I reevaluated the weights of the final scores due to new thumb penalties raising scores across the board. In short, MTGAP is the baseline and normalized to about 100 overall score in prose.

I included Nightfall and Dragonboy to test different genres. Namely sci-fi and fantasy. So if you were a writer in these genres, these corpus are worth consideration.

The flaw in moving space out of the thumbs and replaced by modifiers at the thumbs, is that same finger and same hand scores will fluctuate wildly, depending on text length and character frequency. This includes CLP/ES and 'Low Thumbs' families. Even for short text samples, these scores can start quite high. Ultimately it is harder to optimize these layout families to minimize this flaw--without additional automatic tools.

Den, would it be possible for you to restore your previous klatest setup as version Den3 (and provide the url for this), and your current klatest as Den4? If this is not possible, could you share the code for that version?

The most recent thumb penalties and scoring weighting really alter the baselines I have been working with. AFAIK there is no way to define a key with not only a keycode but a down state (as a modifier, eg Shift) so my layouts for klatest need extra thumb keys defined for such which skew the results even more negatively with your new weightings.

Den3 still has old scoring:

Arts, Literature, and Crafts / Re: [lang] Li-Ya-Hu
« on: 2018-Aug-19 00:51 »
Liyahu is a ternary system. It has also been proposed as balanced ternary. Thus it easily follows that ternary logic and divination can also be utilized from Liyahu symbols.

mind, -, false, no
body, 0, uncertain, maybe
soul, +, true, yes

When one asks a question, it returns one of 3 answers: yes, no, maybe.

Divination similar to Ancient Chinese I Ching hexagrams may be represented in Liyahu. Where I Ching had binary trigrams = 2^3 = 8 combinations, here we have 3^3 = 27 combos. They can be simply represented with khuvi. This form already represents the 27 domains; either use the same domains, or alternative metaphors for divination.

A single vi provides a single answer, whereas a khuvi gives insight across 3 phases to provide a grander view of the problem. Such as past-present-future, thought-action-motivation, etc.

Code: [Select]

 iuo  wmdn
ye_ag hrtsp
 , .   lcf

Same finger is not bad. Here only U on same key as SPACE. Below it is reserved for UP arrow.

KLAtest I just made the thumb penalty score almost as bad as pinky. now you can see the difference in finger usage versus space on thumb.

Can you clarify re digits? (apart from numpad). You want separate row for digits? But digits only, no puncts on them?

thanks, Ian

A row above the letters. It's kind of far, but you don't need to shift to type the numbers. Putting puncs there would require extra shift and extra distance, so putting puncs on number row is far from ideal.

In terms of "Ian theory", (for lack of a better term), the Direction of Travel for thumb keys is All Wrong. The natural motion for us chimpanzees with opposable thumbs is towards the palm, not at right angles to the plane of the palm, although clearly that is also "doable", as anyone who has played thumb drums on their desk can confirm. Or keyboard users and pianists, for that matter :-)

One idea is to have the thumb area connected to the main board with a hinge. The hinge allows it to be adjusted from 0 to 90° (or more). Default state it looks flat to normal users. Advanced and ergonomic-conscious users can tilt to their desired angle.

We did, see attached. Also

The CLP/SC format actually overruses the thumbs, which is opposite of what we want. unfortunately hard to reduce thumb usage for these.

can there be a better balance?

brewing a combination pinkyless + low thumb usage.

1. No pinkies for typing. One may reassign other utility functions, like editing or navigation.

2. Low thumb. Ideally 5% usage per thumb. so no space. Probably modifiers includiig shift and altgr, due to next point.

3. Fewest keys to cover ASCII visible characters.  95 keys to start. but digits will be accessed on numpad or number row. So only need 85 chars. so need 29 keys with 3 layers, or 22 keys with 4 layers.

Given these constraints, then, pinkyless suggests 22 keys on 4 layers. this is doable with just shift and altgr, the home block, plus two more keys per hand. probably home pinky and index inside column. (if making room for arrows on bottom left hand, left hand will also need another index inside key.)

the main layer should hold the most common chars, including space, comma, and period. less common letters will be relegated to secondary layers. thumbs will be for shift and altgr. thumb usage should be quite low since they access less common chars only. unlike CLP/SC which used modifiers for common chars.

Pages: [1] 2 3 4 ... 25