lycea / rogue Goto Github PK
View Code? Open in Web Editor NEWSmall rogue like game based on http://rogueliketutorials.com/ -> base of it
Small rogue like game based on http://rogueliketutorials.com/ -> base of it
The item drop is right atm broken. This is sadly the case since the stacks were added and the item takes its own older place and not the actual player place, stacks need player place to be able eto drop stuff. This should be easy to fix rather fix the owner / add the owner
POI Loading and adding things simpler:
POI usability
POI api
Convert some constructors from taken in a huge list of parameters to take in a table/object
which also have a default object initialisation in it so that you only need to fill in the things you
need, so that creating entities and some other stuff will be much simpler.
put all global variables which are scattered around into a other global file just for informativity
prefix globals with some kind of
FIXES needed
Show infos about the caracter :
health
power
defense
exp to next level / current exp
equippment
Subtopic to #3
Not sure yet how that should be done
but there has to be some indicator of which keys to use for grabbing stuff /selecting stuff /moving
even though it is not that many keys
A simple description could be needed for tiles of different levels to have teir tile sets kind of.
For later this makes sense for different floor / level sets to differentiate them more simple.
The tiles should come in a similar manner as the mobjects so the description should be in the way of:
local tile ={
name = "Water",
["type"] = "water",
stats ={
walkable=false,
blocked_sight = false,
}
colors={
active = "green",
inactive = "blue",
undiscovered = "grey"
}
}
also for later on only few properties should be saved in this tile, this would be:
this later also allows for easier creation of "destroyable tiles",create a type, load it up and
then simply set a new one if destroyed, yey.
This will also aide in the case we want to set a tile set to the tiles later on ,floor and wall tiles seperate tiles ...
A lot of issues are right now sitting in #3
they should be put in single tickets for a better overview but should also be kept in the main meta ticket as overview .... It just has to be done that is all
In a save file there are now 20k lines, the causes are for now:
Some things should be adjusted rather sooner then later, the thing that should be addresed here should be issue with 3 in the following way:
ATM we are saving all tiles on the map in the matter of:
"map":{"width":80,
"height":50,
"dungeon_level":1,
"tiles":[
[
{
"blocked": true,
"explored": false,
"block_sight": true}
,
{
"blocked": true,
"explored": false,
"block_sight": true}
,
{
"blocked": true,
"explored": false,
"block_sight": true}
,
so every single tile is saved after each other. for the next more efficient version it should be saved in the following matter for all tiles in the map described in one row:
looking like the following afterwards:
"map":{"width":80,
"height":50,
"dungeon_level":1,
"tiles":[
{
"x" : 1,
"y" : 1,
"blocked": true,
"explored": false,
"block_sight": true}
,
{
"x" : 1,
"y" : 2,
"blocked": true,
"explored": false,
"block_sight": true}
,
{
"x" : 3,
"y" : 9,
"blocked": true,
"explored": false,
"block_sight": true}
,
for loading we now simply initialise an empty map and fill in the other indexes. Another possibility would be to
create a meta table and return a empty if not exists.
If two items are laying over each other and they will be sorted before rendering. This will cause them to flicker because the default sort is not a stable sort.
Ideas:
sort only in the moments when new things are added to the list and remember the last and first of each "group" sos items can be added and removed in a simple way ?
check if a stable sort is available and if not , maybe implement a simple one ?
Just as a nice indicator of should you panic and run a way or keep and fight!
If later some mobs and items have to be added there should be a nice little tool for making this task simpler(?)
Some ideas what it should be able to do:
for mobs(,npcs)
for items:
misc:
I was in depth 14 with a level 29 fighter and saw something flashing golden. As my inventory was full, I wanted to drop an item. The window went black and the console showed the following error message:
Error: components/inventory.lua:135: attempt to index field 'equipment' (a nil value) stack traceback: [string "boot.lua"]:770: in function '__index' components/inventory.lua:135: in function 'drop_item' game.lua:273: in function 'play' game.lua:451: in function 'update' main.lua:42: in function 'update' [string "boot.lua"]:605: in function <[string "boot.lua"]:587> [C]: in function 'xpcall'
The mobs are now sitting in a table all together and loaded in hardcoded from this and some other info in an if else... this has to be entangled and made more dynamic for simpler addition of mobs.
(Also a reffernce for the meta #3)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.