Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411470 Posts in 69369 Topics- by 58423 Members - Latest Member: antkind

April 23, 2024, 08:56:15 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsVeins of the Earth [RPG, roguelike, isometric pixel art] dev log & feedback
Pages: 1 [2] 3 4
Print
Author Topic: Veins of the Earth [RPG, roguelike, isometric pixel art] dev log & feedback  (Read 9986 times)
Zireael
Level 4
****


View Profile
« Reply #20 on: March 12, 2017, 02:35:34 AM »


Because you asked nicely, guess I can elaborate. If you just do a comparison of that to your game right now, even though all these are supposed to represent retro graphics, you can see that the top two are more fine in their choices. Not only is your choice of texture flat, but it also has the colours of green in it, reminding of sewerage. One other thing is that from my eyes which are that of a designer, I can see that the image looks like it has artifacts, suggesting image compression, possibly a compressed jpg or really low res image stretched unproportionately.

Now you mentioned bulders gate 1, well here's a screenshot from that game (below). As you noted, it's not just one flat texture in all instances of these screenshots. There's depth, variation, different embossings to make it seem much more intelligent than just slapping a texture on a rectangle and calling it a day.




Thanks for the explanation. I'm nowhere close to a graphics designer, but I see the point about the green tinge and the variation/embossings. I will probably go with a flat gray color (no texture) / bronze borders for the mockups and then attempt to add variation to the texture. And eliminate the weird green.
Logged
Zireael
Level 4
****


View Profile
« Reply #21 on: March 18, 2017, 12:07:29 AM »

Not much to show because Raw Air and job search :/

Changelog:

*    Draw a border around the tile we're mousing over
*    Make an actor class, spawn five kobolds (that do nothing for now)
*    Use SquidLib's rng functions to randomize the positions
*    Spend half a day trying to figure out how to make specific function profiling work (it required passing a specific parameter to JVM, but it was getting lost somewhere... >.<)
*    Display our background picture in start menu, make it fit the window size
*    Use the VisUI library to prototype UI quicker (and got rid of the stone UI texture for now [that is until I can improve it])
*    Draw label next to mouse cursor which tells you the grid coordinates of the tile you're mousing over (e.g. 0,0)


In other news, I renamed the T-Engine github repo, freeing up the simpler name for our new version: https://github.com/Zireael07/veins-of-the-earth

I also made an ECS branch and succeeded at implementing actor position and rendering in it. The branch's missing movement/input at the moment. I have profiled the two branches extensively and while the ECS version is a couple of ms slower, it's unlikely to matter (the FPS in both are a solid 60 even with 6 actors on).

ECS should make it easier for me to implement such features down the line as polymorph spells and switching control to your kid on death.
Logged
Zireael
Level 4
****


View Profile
« Reply #22 on: March 24, 2017, 11:36:51 PM »

Rolling along with ECS:

* new: Set up a movement system, including keyboard input
* fix: Randomize NPC spawn positions
* new: Add a name component
* new: Write a turn system which does what it says - the biggest pain was figuring out how to make the 'current entity' change properly because it was getting stuck
* fix: Actors now can only move on their turn
* new: Set up an array of chars as a dungeon representation because the Dijkstra map implementation from SquidLib needs it
* new: Make the AI use Dijkstra
* fix: Update an outdated version of SquidLib to fix a crash when AI pathing
* fix: forbid moving into wall tiles or where other actors are
* new: player pathing to clicked tile
* new: if entity in target square, test log messages and dice roller
* new: implement a faction component
* new: basic faction recognition (is it different from mine?)

I could whip up a quick gif but it wouldn't show much (a player and four kobolds on a 10x10 map plus the message log). Next week I ought to have something showable at last!
Logged
Zireael
Level 4
****


View Profile
« Reply #23 on: March 31, 2017, 11:13:41 PM »

**Veins of the Earth**

* Fix: movement system needs the turn component
* new: test item - longsword
* new: add slot component to the sword
* new: armor tile for testing
* new: if entity on moused over tile, show its name in tooltip
* fix: proper placement for item sprites (different from actor sprites)
* fix: draw items before actors
* fix: getting position of entities that aren't actors (= don't have a turn component)
* new: a removal system and component to gracefully remove entities
* fix: actually add the removal system
* new: pickup code (beginnings of inventory system)
* new: player component ^Note: unused for now, in the future it will facilitate switching to your kid on death
* new: inventory component
* new: simple pickup and drop
* fix: make mockup inventory a window, proper input handling
* mod: multiple inventory slots
* fix: improve the layout of the message log

Because I promised last time:
Showing off the game so far
Logged
Zireael
Level 4
****


View Profile
« Reply #24 on: April 07, 2017, 11:27:13 PM »

This week, I mostly worked on the inventory code. You can now have multiple items in your backpack (lower part of the inventory screen) and you can actually equip them.

I added actual hit/miss to the combat stub, it's 55% to hit right now, d100 roll under. The game also displays splashes depending on whether you hit or missed (the exact same splashes you have already seen earlier in the thread).
Logged
Zireael
Level 4
****


View Profile
« Reply #25 on: April 14, 2017, 11:06:45 PM »

Showing off the game!




Changelog is smaller than I wanted it to be because holiday prep took more time than expected.

    new: basic JSON parsing
    fix: use equals() when comparing strings
    new: load multiple table entries from JSON (e.g. two items, each of them having 3 variables, in one file)
    move entity creation to a separate class
    create Area class to hold stuff for a single area (e.g. map, spawning)
    fix: internal map class to avoid mismatches between displayed map and Dijkstra map (the class holds the texture for the tile drawn and the char used in Dijkstra)
    fix: add actor reference to internal map tile data
    fix: reroll spawn x,y if an actor is already there (based on map references)
    fix: movement stores and unstores actor ref in internal map
    fix: only load from JSON once, reuse loaded definitions for individual spawns
    new: load hit point data from JSON
    new: apply damage on hit and show it on splash

The big change this week is JSON loading, which should let me add content to the game fast! I've been using Lua tables before and JSON is very much like them.
Logged
Zireael
Level 4
****


View Profile
« Reply #26 on: April 21, 2017, 10:34:10 PM »

JSON is lovely but there is also a matter of free time :/


    new: implemented actor stats, including stat arrays
    fix: randomize damage dealt
    fix: make NPC data parser work with multiple entries
    new: add drow and (neutral) human to the JSON
    new: basic spawn randomization

Logged
Zireael
Level 4
****


View Profile
« Reply #27 on: April 29, 2017, 12:19:58 AM »

Changelog for this week:

*   new: JSONs define the damage a creature deals
*   new: load one-liner dialogue from JSON
*   new: you can now talk to neutral NPCs (will spew one-liners)
*   fix: sort actors before rendering, to ensure correct order (no unit markers overlapping other actors)
*   fix: better log message for wearing an item as opposed to picking it up
*   new: items can now load damage values from JSON
*   new: use weapon damage if wielding one; add log message for damage
*   fix: less magic numbers in mapgen
*   new: increase map size to 20x20; implement camera movement on player move
*   fix: fix mouseover label so that it works with moving camera
*   utility functions for converting between screen-> world and screen-> UI coords


Alas, increasing map size uncovered a bug in the world->iso conversion function. The further away from 0,0, the bigger the offset in reported values. It starts being noticeable at around 5 on either axis and at 18, it's really annoying (close to 1/3 or 1/2 of a tile). I guess it's a compounding error, like half a pixel or something originally that grows. I've tried to fix it by storing respective data in the renderer class (which took me half a day yesterday), but that didn't work out. It's top priority right now because it results in actors no longer properly placed on their tiles and in mouseover border being offset.
Logged
Zireael
Level 4
****


View Profile
« Reply #28 on: April 30, 2017, 12:56:53 AM »

I managed to fix the bug (see, the yellow mouseover border is now drawn properly), so here's a gif of the progress:

Logged
Zireael
Level 4
****


View Profile
« Reply #29 on: May 05, 2017, 11:18:07 PM »

Changelog for this week:


*    New: set up unit tests for world->iso and iso->world functions
*   Fix: the mouseover border was drawn offset because the function was rounding unnecessarily
*   Fix: you can now click on a tile with a 0 coordinate
*   New: implement Cogmind-style labels
*   New: draw a one-liner on screen for 4 secs when talking to a neutral NPC
*   Fix: clean up main menu code
*   New: beginning of an effects (buff/debuff) implementation (wearing an item grants you 5 bonus health) Note: This took me a better part of 2 weeks and only came into being thanks to a discussion on /r/gamedev and on a programming Discord

Logged
Zireael
Level 4
****


View Profile
« Reply #30 on: May 12, 2017, 10:59:19 PM »

This week's changelog:

*    fix: inventory screen now updates live as you wear items
*    new: ability to take off items, complete with removing the test +5 HP effect they give
*    new: neutral AI now path to a random target
*    new: character creation screen, generate six 3d6 stats
*    fix: give actors their intended HP (20 for the player, whatever the JSONs dictate for the NPCs)
*    new: actors can now die
*    new: display game over window when player is killed
*    fix error when going back to main menu from game over window



Job search taking a lot of time Sad
Logged
SolarLune
Level 10
*****


It's been eons


View Profile WWW
« Reply #31 on: May 14, 2017, 11:21:35 PM »

Yo, cool. Keep it up.

Just wanted to pop in and say that you might not have been properly batching your sprites / drawing with Pyglet - I was easily able to achieve high FPS rates with Pyglet drawing way, way more than 20x20 tiles, though I don't know your computer specs, so I couldn't be sure.

Anyway, nice work!
Logged

Fat Pug Studio
Level 2
**


View Profile WWW
« Reply #32 on: May 15, 2017, 04:15:05 AM »

I do concur the visual aspect of the game is horrible (it reminds me of those old F2P RPG MMO's in high res pixel art, never liked those), but that's the last thing you should worry about now. Just keep on working on the game, when the time comes review your options:

1) Learn to draw (cheapest and most time-consuming)
2) Use free art (wouldn't really recommend this)
3) Hire an artist (most expensive, but least time-consuming and best results)
4) Get into a shared revenue model (wouldn't really recommend this too, somebody's always gonna take an unfair share of earnings probably which will lead to shitstorm)

Considering the fact that making a game makes time i presume you'd like to earn a buck or two on it. Fortunately for gamers, but unfortunately for devs, graphics are quite important nowadays, so bear in mind you have to invest something (besides time) for it to get back multiplied.

Besides having a job, i took a bank loan. you can do the same when the time comes. Regarding your game, i don't think you would need more than a couple of grand which you can get back fairly easily if it's at least a half-decent game.
Logged

Zireael
Level 4
****


View Profile
« Reply #33 on: May 16, 2017, 01:10:25 AM »

Fat Pug, I'm using free assets (the Gervais tileset that is also used e.g. by Angband).

Also I'm not making this game for money - it is and will always be free.
Logged
Fat Pug Studio
Level 2
**


View Profile WWW
« Reply #34 on: May 16, 2017, 01:46:24 AM »

Oh that's great then, i'm sure a lot of good artists would like to help in their spare time to make a free game prettier. I know i would if i knew how to draw.
Logged

Zireael
Level 4
****


View Profile
« Reply #35 on: May 27, 2017, 08:56:39 AM »

Not much to report for the last two weeks because of a job search (going to an interview Monday!)

Changelog:
* added goblins and made them spawn on the level
* started working on character sheet screen

As you see most of the internals are done so it's back to fairly non-glamorous stuff such as the UI and content. Adding content is just copying and pasting JSON data, so it's not very motivating or exciting, and neither is the UI work. I find it more interesting to work on the side project in the little spare time that I have. But Veins is definitely not abandoned - it has gone through many such slumps and declines in productivity in the 3 years that I have worked on it. I will surely pick the steam back up at some point - however, I can't say whether it'll be in a week, a month or two ^^ points to the fact that there's a job interview Monday.
Logged
foofter
Level 4
****


MAKE THAT GARDEN GROW


View Profile WWW
« Reply #36 on: May 27, 2017, 09:04:04 AM »

I'm assuming you know and like the Spiderweb games? Avernum, Netherworld, etc.? I played all the Exile games when I was younger and re-got into Netherworld recently...
It's kinda surprising how fun they are, given how clunky the systems and text are most of the time. Almost restarted Netherworld again a few days ago actually...
Logged


@_monstergarden (game) and @williamzwood (me)
See Monster Garden progress here: https://forums.tigsource.com/index.php?topic=56012.0
Zireael
Level 4
****


View Profile
« Reply #37 on: May 27, 2017, 09:06:23 AM »

I'm assuming you know and like the Spiderweb games? Avernum, Netherworld, etc.? I played all the Exile games when I was younger and re-got into Netherworld recently...
It's kinda surprising how fun they are, given how clunky the systems and text are most of the time. Almost restarted Netherworld again a few days ago actually...

Never played them I'm afraid, although I've seen LP's of Avernum on YouTube and very definitely looks like something I'd enjoy, if only I could get a hold of it Tongue
Logged
Zireael
Level 4
****


View Profile
« Reply #38 on: June 10, 2017, 01:18:44 AM »

Changelog for this week:
*    new: implement race selection and racial bonuses to stats. (Of course, races are defined in JSON - have I said I love JSON?)
*    new: add money component to player (starts with 100 silver), display the money in character screen
*    fix: provide a default bonus of 0 in character creation - if you don't click on any race, we assume you're a human
*    new: tiles and JSON data for coins
*    new: functions to parse the above JSON and spawn coins
*    fix: position and rendering systems treat coins as items
*    spawn some money on our level
*    coins can be picked up and they add to the player's purse



Still needs some more work - it needs proper FOV (I need to figure out how to display it, I guess I'll need to dig into LibGDX's isometric renderer code). Also those coins need a use, which means merchants, which means dialogue screen (I already have the content laying about from earlier iterations).

ECS is awesome when it comes to the sort of development I'm doing lately - 'got two hours, let's implement a new thing for Veins'. I can quickly whip up new stuff since it's all data (and loaded from JSON in 99% of cases) and then it's only a matter of adjusting a system or two.
Logged
Zireael
Level 4
****


View Profile
« Reply #39 on: June 17, 2017, 03:40:47 AM »

This week, nothing got done.

I am going to start a new iteration of Veins, this time in Python, because there is a prospective job that needs Python rather than Java. Python, in a way, is a throwback to the Lua beginnings of Veins, so I guess it will be a great way to learn!
Logged
Pages: 1 [2] 3 4
Print
Jump to:  

Theme orange-lt created by panic