Lambdarogue port?


I have checked this link, and it is working. But this is a slow 10Mbit connection, maybe bandwith was exceeded.


Thomas
 
Last edited by a moderator:
Ok link worked now.


After extracting to source dir and building with


fpc -vewn -S2 -Tlinux -Fl/opt/fpc/lib/fpc/2.6.0/units/arm-linux -gl fprl.pas -olambdarogue


I got error


Compiling BaseOutput.pas


Fatal: Can't find unit GameConsts used by BaseOutput


Any idea what is missing/wrong?
 
Ups, the most important unit forgotten to add :rolleyes: I will add this later as attachment. This unit contains all resolution consts. Sorry.


Thomas


PS:


compile with "fpc -vewn -S2 -Tlinux -Fl/opt/fpc/lib/fpc/2.6.0/units/arm-linux -gl fprl.pas -olambdarogue -Mobjfpc"


The option "-Mobjfpc" suppress error message "Items.pas compilation errored out at line 354"
 
Last edited by a moderator:
Why is this called "GameConsts"? It should be "Constants", except KidPaddle added something else. Typo?


Edit: Ah. I see.


Edit 2: I think such things should go into "BaseOutput.pas".
 
Last edited by a moderator:
For first implementation, i minimized changes on existing units, so i add a new unit. It makes comparing changed units to origin code easier if something not working as expected.
 
Last edited by a moderator:
So, this file was missing. I have unpack the original source, copied my changes into and start compiling. It compiles, game starts, please check it.


Thomas


PS:: lambdarogue_diff.zip was updated with missing file.

GameConsts.zip
 

Attachments

  • GameConsts.zip
    1.7 KB · Views: 160
Last edited by a moderator:
Wow KidPaddle nice job with GameConsts. Looking good so far.


0) In "quit menu", selecting 1) or in main menu selecting 3) for Options crashes game


1) As Enchanter, there is a blue star above the map in the top right corner, blocking the map view.


2) In Inventory selecting ®emove item causes overlapping text. Not sure how to fix. Happens because inventory command line and "remove" command line both use ShowMessage to display text, which displays at Y position cShowMessageY. Perhaps this procedure:


BaseOutput.pas:1181:procedure ShowMessage(message: string; pressanykey: boolean);


Needs another parameter indicating relative Y position to display at... Or we create a procedure ShowMessage2 that displays a line above or below ShowMessage?


3) Console output reads ERROR: File graphics/invbg-480.jpg not found.


Lots of good work there KidPaddle. Cheers!
 
Thanks for bug hunting :D


I attach missing graphic file, this solve crashing game in sub menu.

1) As Enchanter, there is a blue star above the map in the top right corner, blocking the map view.
I see, i will change this.

I have added a new version of UserInterface.pas. This one shows correct message bar in inventory screen.


Next version will be come on sunday, hopefully.


Thomas

invbg-480.jpg

UserInterface.zip
 

Attachments

  • UserInterface.zip
    7.2 KB · Views: 151
Last edited by a moderator:
Ok, here we go, a new version is ready. I had to change the loading and saving functionality, running from pnd raised always an exception on starting.This happens, all saved data was stored in program directory, which is not allowed inside of a pnd. Now it goes to appdata - directory.


PND: lambdarogue164.pnd - Contains complete game for Pandora, only 800x480 graphics included


ZIP: lambdarogue164.zip - Contains complete game for N800/N900, only 800x480 graphics included


Diff: lambdarogue164_diff.zip - Includes complete source and changed graphic files


Thomas

menu.png

intro.png

gam01.png
 
1) As Enchanter, there is a blue star above the map in the top right corner, blocking the map view.
I see, i will change this.

I have added a new version of UserInterface.pas. This one shows correct message bar in inventory screen.
I compiled with new UserInterface.pas but enchanter character still has blue star on top of map. What file fixes this?


If i install your complete new diff, will I break n900 compatibility due to path changes?
 
You have to do following changes:


UserInterface.pas.


1) There is a line "for j := 1 to 12 do" near to line number 389, change it to "for j := 1 to 10 do" - we have only space for 10 quick items.


2) Change line "IconRectS.x := ChantBarX + 3 + (40 * i);" around line 442 to "IconRectS.x := ChantBarX + 3 + (40 * (i - 1));" - Move icons to correct position in quickbar


fprl.pas:


3) Change "strQuickKey[12] := 'Cola';" to "strQuickKey[10] := 'Cola';" - This helps on new enchanter char, move quick key "Cola" from F12 to F10.


All savings goes into user home directory now, like in lambdarogue 1.6.0. This is done by replacing Assign(File, Path) by own function OpenFile, in unit FileIO.pas. This functions loads first from home directory and if the file not exists, from program directory. Saving goes always into home directory, so next loading reads saved data from home directory. Should be compatible with any linux system, all necessary directory will be created on the fly.


Thomas
 
Last edited by a moderator:
You are a wizard, Kidpaddle. Finding these things so quickly - good job!


EDIT


Couple comments


1) The line seems to be 380 in UserInterface.pas which I changed as follows


// NEU; zeigt QuickKey defines an^M


for i := 1 to 10 do^M


2) line 449: setting to -1 moves the cola icon too far to the left


3) fprl.pas line 6122: changed to strQuickKey[10] := 'Cola';


Now the quickkeybar looks good.


I also noticed


* the help menu has overlapping text, also in help submenus, "Press any key to return to help menu" and "Space or Enter to continue" overlaps


fprl.pas:10272: GetKeyInput('Press any key to return to help menu.', False);


fprl.pas:10535: GetKeyInput('Press any key to return to help menu.', False);


GameConsts.pas:17: cSpaceOrEnter = ' [sPACE] or [ENTER to continue]';


Not sure how to fix, since moving GetKeyInput down affects other menus.
 
Last edited by a moderator:
Back
Top