• Register

What is done:

  • 1 character, attack with bow + attack by hand
  • 3 camera modes - chasing camera, first person and free camera
  • 4 monsters[mushroom, lizard, borrog and plant]
  • 1 EU server capable of 50-80 players+network system
  • gold, MUSHROOMS
  • items gui
  • fox, rabbit is added
  • health+mana potions
  • fast 1..0 gui
  • items
  • spells
  • healing/mana stuff, items, gui+restoration

What's gonna be done:

  • chests
  • dungeon level
  • forest level[i have healing models and some building, also need to write code]
  • forest animals[bear,Moose,boar,deer,polar bear and a penguin lol].[need to only add them]
  • sand level
  • forgotten city level
  • village - base place for upgrading selling, e.t.c.
  • critters
  • insectoids
  • spiders for dungeon level
  • ability to edit your character(skin color, haird color, eyes e.t.c.)

Development videos are here: here and here

Development logs are in articles(they will get updates once per week)

If you want to donate PayPal here Patreon account here

patreon img

You can also donate here:

All donators will be given access to test version once it becomes avaliable

Current System Req: win(vista, 7, 8, 10) core i3, dx11 capable gpu(730 or better), later i may add support for dx10 gpu. Developed in c++ on my own engine with newton physics.

  • View media
  • View media
  • View media
  • View media
  • View media
  • View media
Post article RSS Articles

RPG Idea Summer update


New sounds, grass, ai-system, big updgrade for inventory and weapon system.

  • New walking sounds + new effect sounds has been added
  • New 32bit(float) high quality HRTF(Head Related Transfer Function) with support for wav,ogg,flac has been added.

  • New path finding system for monsters and later for supporting characters has been(it will help monsters navigate around the trees and other obstacle to find optimal path to kick your ass)
  • New portal speel+teleportation spell has been added

  • Now there can be many monsters that will attack you(some will set traps for you, some attack with classic rings)

  • Better rendering for grass

  • New background sounds for forest has been added

  • Grass now have ferns and other plants in it

    • And finally inventory system has been reworked to equip weapons and pants for increasing player stats

Full changelog:

12:57 PM 10/2/2016
new tex saving, save hash from PURE texture, then generate MipMaps and dump data for full-chain texture
we should also dump dds in cache using new dds loader, abd hash for them must be computed the way that we dont need to compute it everytime, use normal tex hash when savin
we can also switch hashing to new SHA1
make bump/parallax sample stuff from level0 to reduce jagging
added loop to 3d audio

10:31 AM 9/27/2016
let's start fixing our lod problem, by generating something nice and dumping it into dds
new tex processing concept, iterate over texture, load it, generate mips for it, rewrite it as same index with new hash[that will update the db]
maybe even like this, load texture, check if it has mipmaps, but we will have problems if were stupid enough to save dead black mipmaps
microsoft loader is at fault :(
when we enable mip map generation all is good, meaning we must either mark them to be generated somehow or process and save or reprocess and save
fixed as checking if we don't have mip levels

10:27 AM 9/21/2016
fixed user inverting of ai boxes inside of it
new ai concept[add monsters as blocker, offset our starting_Point, add main city dirty val, add gridXY to charabase to keep_track of their location
better idea, we need to mark monster outgoing lane, from center to output, marking it as quad with exit, the whole monster is just red boxes, but from center of monster to the exit we mark a yellow lane which will be used for path finding
we have our bug because we mark the present, and we need to mark the future path

5:49 PM 9/20/2016
add 3d sound to lighting bolt!
added check for stereo & 3d
we must mark full AABB of our monsters into grid

8:54 AM 9/19/2016
added better walking sounds

11:52 AM 9/18/2016
use new soundlib to load quality wav directly to OAL and test play them, we can greab lots of tempates from cAudio we also need to check sound quality and we must make sure to link to correct library!
we can bring back our table with sounds that will kill them once they have stopped[but generally that managment should be done OUTSIDE sounds to keep correctness]
explosion doesn't play because we kill sound too early
added classic keep_alive scheme for sound
ok, idea, sound played once[finished, DROP IT][no need to kepp sources alive if they are not needed]
fixed bug in icore where gcsource was not to set to NULL
we can add pattern[keep sound alive][or we can just sound drop on stop class to ease managment!]
add randomized step sounds additions
+cmd in config[random using+chance of nothing executed][can be emulated with lots of empty files]

11:52 AM 9/17/2016
new sounds for item picking
add new sounds for UI

11:23 AM 9/16/2016
improve loader to ** instead of *
tok string where * resides and just left+digit+right instead of shit we do!
auto memory removal for threaded loader
ProjDepth concept
added generating mips for tex

11:16 AM 9/15/2016
oob inter blocking
add all new rpg sounds

1:44 PM 9/14/2016
tree obb dynamic update+modification to our base tree to have ability to edit & update user data on box modification
another idea with obb moving
for obb we should test not only monsters but their futures as well
enemy will need to register it's OBB and update them in cycles[time updates!]
we create obb from player collision center, box with some form of extent+rotation
we must always visualise them for testing purposes
sha hashing added
cleaned old cryptapi from core

11:23 AM 9/13/2016
new threaded loader concept
limited data cache, execution upon ready factor, execution in main thread
base reimplemented
added better string cacher, removed old test one
added dispatch for etex format as multithreaded loader
added limitation to threaded loader for amounf of objects that needs to be created
Load->Process->Dev_Load concept implemented as UNF + post UNF

5:57 PM 9/12/2016
check that imesh get's hashed in memory
validate our most reloaded chunks[also check that nwtrgl cache also in memory][will be very nice as statistics!]
both validated, so we only load unique stuff, so there is generally no need for caching purely,
*we still need threaded loader which will give you values once it's ready, we should do it similar to boost asio

10:24 AM 9/10/2016
etex concept seems to be dead, fixed
camtraverse division on 0 fixed

7:57 PM 9/8/2016
if both monster collided set them to idle[must do that before AI in code where we set them in walk state!]
our idea of moving actors a little bit to the back with marking pairing actors, so we wouldnt both on them+to that back movibg we beed some idle stuff
in general we need stop light system fpr monsters, let one pass, also we can alternative idea for mobstees to wait their turn or to go back to original locatiob
this all done to prevent flickering
new idea, how about we do raycast for monster to scan actual reality[from center to attack point]

11:25 PM 9/7/2016
frogs now fight you with lightening
OLD CONCEPT, QUERY COLLISIONS FROM OUR CHARAS[there must be a hook for it to prevent them sliding over each other]
mana <> bugfix

4:41 PM 9/5/2016
dynamic culling bug fixed
possible bug here[due to deletion of actor] in void ChkFrustumCull::Update(eprovider *actor, size_t ID, e3d_BBox &bb, bool IsStatic) from UpdateActor(iBaseActor *ac)
invalid casting didn't reset cooldown
reenabled core indexes to prevent always new MemID
no mana, draw on gui!
WE NEED SOME form of spells estimators[before everything is applied][to draw it on gui and to check wherver we can use them][for now we can test create on highlight!]
implemnted as lamblda for tmp reasons, later should be cached on server and recomputed for level
problem #1 inheritance of spells
simpler solution move all to create spell[but not directly, somewhere near it!]
add inherit params to function, or we can push lambda inside it to prevent inheritance
ideally that stuff should be on server
new sounds for big worm
toads now create LightingBolt problems
fixed groundring spell
small bugfix prevnting playback for too faraway sounds - that was causing ttrtrtrt

8:56 AM 9/2/2016
integrate new bullet vs object sounds
integrate new 3d system for sounds manager
generic scene unreg on destroy class
some flares when bullet hitting the stone is required!
audio improved tickiging for playclocked

11:27 AM 9/1/2016
our dispatcher idea that collects stuff and processes it still is very nice
abstract comands list that will get executed on other thread once it get's dispatched
Same other thread dispatch
better idea, enemies will have addedID, idea here is to use djkstra also on other thread and calculate all paths at once, then copy them on demand
also in our dispatcher, we should reset do all tests[without reseting, since we have consistency now][should be much faster]
now left are tests[new thread, we can replace it with boost pool_thread]
instead of aabb of objects we should add collision boxes
that causes a little problem since we can't get them
idea is to get some form of id from dispatcher, then for that tree ask if body exists and then return it! to get AABB
that will also make consisteny with ai vs real physics world, since it unloads lots of stuff
better idea, to just have bb of what we create in collision, estimate it when we do collision![less problems, nice result, they static anyway]
added skiiping lod meshes when generating bboxes
enemy if Ready+HaveResults(ID) -> read, ID=AddSearch(a,b) move along, try that
ai idea_
first add separate function for it!
then once the monster lost his way we can move it to last point, or we can sample points around him to check they any of them is valid, then he goes to that valid one
same with user, if user point is on the red, then we use last white one
another idea, probably better
caching our path[we can do that by projecting path into set of real_world coordinates]

7:35 PM 8/31/2016
volatile addition
new CPatGraph added
volatile idea seems to work, we can still roll our mutex to protect it, we need to check perfomance on that
atomic variable is hevy because they have interlan l while loiop
idea about dynamic blocking from list of monsters![old idea, but might secerely improve ai]

10:50 AM 8/29/2016
now we have nice path, next thing we need is to optimize monster movements on it
parallel build grid[after all]

10:23 AM 8/28/2016
new system to pause sounds will release avaliable channel improving the play ratio
patched soloud with sdl2
add loadtomem sounds to prevent gaps when firing multiple sounds which were very annoying
to snd add flag stop on destroy[usefull for flares to stop them once needed!]
we've updated astar to our new system, we should reconnect it
we need to find actual source of slowdownds, better idea is to put all that stuff into threads
add blood for pistol

10:57 AM 8/27/2016
misc bug, our exposion is loud, because it starts playing at point 0,0,0 [let's still try to have FIRST POS BEFORE playing, that way it will start in CORRECT POSITION]
in reality it should start playing either on update with new values or we should set new values before calling play!
also don't create boom sound when colliding with user, only with ground or trees
brought back volume settings for 3d sound
kinzar looping sound still has a problem, it doesn't stop for some reason and keep looping
special case for ambient sound, just start it as looped and ignore the rest
beter idea special case for looping, blocked case added to correctly stop sounds and to handle overlapping sounds better
guivree snd loop problem
isplaying to monsters still need fix, or rewriting how it works!
we store the volume value to apply it later

4:20 PM 8/26/2016
better 3d sound handling and updating system added
general structure to have many differnt sounds, generic switching for 2d and 3d
patched snd2d for new structure
also another idea, setup simple sample when the sound just moves around in a circle for example, validate there, then try moving, maybe we missing something crucial
after so loud let's try making monster sounds to 3d!
we seems to isolate bug[it's not certain what causes it, but when we faraway from center 3d sound doesn't work, it's just static for some reason][we probably have errors in setting position somewhere]
that bug happens when we get futher from center, i suggest to add 3d sound to monster, that way we will be able to understand it better or reduce flare speed
in order to make soloud to our engine, we need to test it on sample where sounds resides, just have static source and move camera around it[first fix X axis][validated it's correct now]
How to fix sudden stop sound, we can remove it or have cache of sounds

9:16 AM 8/25/2016
add dropping for empty hashes or for hashes that don't have filename existing
wrong hashing tex/object bug fixed
ensure that we have no ID collision by checking id's before writing!
zip based idea added
TRSL annoyances removed
improved controls
wrong listener rotation problem fixed, now sound show be all correct

3:04 PM 8/24/2016
PhysFS file_system reader for out big storage
serialise/deserialise idea
new quick/clean code for data loading

10:12 AM 8/23/2016
Play with PhysFS learn it, it might be very helpfull for you
also gun raycast bug, we need our own move function to move further then our last point
can be fixed if we read city_destactor field from our aim thingy or we can build aiming ray of certain
dust bugfixes - wrong axis+size

9:31 AM 8/22/2016
fixed bad sound from blue magic
add new exposion 3d sound for flare
3D soloud implementation
dust concept added
for anim problems we can add direct lerp speed to increase or decrease faster

9:52 AM 8/21/2016
shooting+raycast hit
base class added
speed of shooting reducer intriduced
unified enum snd base to prevent constan load/play sound madness
have files sounds.txt for example[there we will have list of files+enum in code][that way we can easyly call them]
soloud to iAudio while we have sound
2D soloud implementation
clocked implementation
isPlaying needs to be fixed
integrate new chick sounds[import ok]

11:19 PM 8/19/2016
Better key hit, we can update it in acv scene loop that way we won't have blocking problem on lpwfps and there will be no need scene step is 0
better hit causes camera_speed_x to be broken
integrate new enum in code
profile CCity to find what's so slow in it[reason founded - it's our new AI][slowdoes is not direct, it's affecting one][i suggest move that in separate thread and do all computations there]

9:49 AM 8/18/2016
add remove to our alnvec[we have erase, test it]
LZMA idea to big file compressor
For compression we cab have sz set to zero and read first size from stream instead and decode our big stream
simple idea, size is 0, read next byte that is compressed data info
new idea to only save stuff that are actually smaller
add cleaning of too much crap for it
try LZ4 compression, since LZMA is slow

12:33 PM 8/17/2016
const style optimization for grid converter
try different graph dynamic[invert it and verify][tried didn't help]
add rTrees to scenegraph or any other simple file
so we can queryAABB and test them+testing functions
test our new irTree[failed]
need dynamic mode for that tree
first tests passed ok
In debug let's dump our cache hashes and sizes to read and verify

11:18 AM 8/15/2016
added dynamic graph removal/creation, tests passed
astra on djkstra added[to test]
LZMA linking fixed
GRID Based helpers, same as we have for height[one unified class for that stuff]

8:46 AM 8/12/2016
first TIFF,then TGA, if failed both then dds, better image storage added to bigDB system
tex convrter for DB convertion ready 5gb->1gb, tested works
e3d_LowStd with no debugger must now throw ->causes crash
global grconv.LocalVec2Grid system added to reduce bloated math
verify that previous arhives shows the same picture as new tiff ones!(confirmed tiff is blacker])
AI For bots
1. calculate path to user
2. walk to next point, once our center+offset in that point, go to 1
we can always try raycast but it will bug out on many bad objects and expensive
mark monsters on map[self collision problem?]

3:26 PM 8/11/2016
we must drop our data from static trees upon their death, that's why we get crash
added generic dropper
started implemented graph
started GridAI system
AI tree fully integrated
1. we collect objects in region
2. we fill them with our graph using AABB
3. we generate a tree
4. for our enemies we generate shortest path for them to go[this can be done in multi - threaded or single for now]
fixed edge related ai bugs
general idea, ONE big AI graph where we mark trees and other stuff
we query that graph for all things related to finding where to go
main problem is to fill/empty that graph, because doing so on array is fast, on graph it's not
there exist erase_node function, we need to profile how fast is it
so the point will be to have one big graph, and consatatly add, remove edges from him[that we do once][processing that graph we do much oftern]
idea here is to have dynamic map of nodes
everything is basicly the same as grass

2:04 PM 8/10/2016
parallel sort for render added

9:07 AM 8/8/2016
add right anim selection
we require faster blening for shooting, or we need aiming first
we also might need back switching to aiming if we holding that key[new structure]
added special aiming+shooting case

9:28 AM 8/7/2016
additional marks for spell deletion on failure to execute
Add bool val if user eye ray cast fails to prevent executing spells based on it
we can also add new function can execute with conditions with bleep for spell, we needing it for teleport already anyway
Teleport for now will work by idea where you last look when you first entered teleport will be your destrination
we must add code to reset chasing camera

8:43 PM 8/5/2016
disabled old shading+shadows

6:36 PM 8/3/2016
put flower on our field as test as well

12:12 PM 8/2/2016
remove bloom blood!, keep pure blood
archer teleport snd added

10:08 AM 8/1/2016
fix executing 10th spell
Sample26.gif is our vortex that we need - effect117 is vortex
another idea create portal you teleport through it to other location somewhere
portal is created where user points, or somewhere close to him to prevent someone creating it faraway and getting trolled :D
portal get's bigger, then closes!
stop walking sounds ambient type when character stopped, as akseron suggested use some value, also add line to the bottom that shows durability and becomes red when its low, also stuff on map gets generated randomly durable, 35 to 100 percent, also for spells have -1 that disables it or just have it for equip item exclusively
walk sound must stop once the thingy has stopped it's animation)
portal problems in muxing final image
10-0 FIX + image for gui
portal improvements
needs to be rendered after grass[we need similar to water structure]
separate function is better, we draw it similar to post, after everything, tonemapping e.t.c.

9:39 AM 7/30/2016
we already have mesh registering, how about pure tex registering, we can add file called reg_tex[in that file we will put filenames, and with some sort of parsing it will spew out ids]
that would be very usefull to quickly find out regged tex_index, alternative is just to parse the folder for images and reg them
that idea is great, because we can also assign some form of name to that index, so we don't have to load pure files in future
to random texture selection push_original image+finalize our tex hashing system similar to mesh, tex_name.etex for example
validate the fact, that DDS texture have worse quality then pure loaded ones!
patch code to fix relevant problem associated with it
CRASH -- sometimes on animated texture[either bad texture or amount of rows is 0, we need assert or some check for that]
add cooldown to that spell
idea is to have cspell class(base exists)+we can just add spell enum index to it!
png->jpg for small images to reduce loading time
we can upgrade our cold with texture Sample33 instead of just blue ring[Effect126.png]
WE HAVE BIG PROBLEM, all our intenal textures are created with LOCAL gc, we need to push them to global gc
other problem, seems to be connected to instancing, we need to change it somehow, probably change mesh for now

12:40 AM 7/29/2016
Durability needed+%% fix
durability -0.1..0.3 from 100 random per each hit, 20% per death
durability added more digits to it for slower decline and less floating point errors
snake reduced size+fixed sounds
Monster will try to attack while getting hit as well as you
looping death sounds needs fixing
borrog sound stuck problem[probably caused becase we share our csound state and it's get shared and have 1 source, we must not share it between same entitys somehow]
basic teleport requires test of where we gonna teleport and opens lots of hacks
[generally should be limited by distance, if it's lesser then that distance we can teleport there]
+sound if we can't teleport there

10:40 AM 7/27/2016
found bug in shader creation for d3d10/11

10:06 AM 7/24/2016
Try bias as acv or as 2 acv
LET'S MAKE GRASS OUTPUT US Z, that way we can merge grass Z with mainZ or do separate grass hdao
fix grass problem, the main problem here is skybox vs grass[grass is not getting rendered]
ADD chest opening sound
poison mushroom death sound add+general mushroom eat sound
tree impact sounds for dart add
HORRIBLE slowdowns apparently caused by driver, we didn't change anything

10:06 AM 7/22/2016
add sounds for other monster
patched for better volume handling
flying thing add value to set distance values from our script)
we now have mutitude of random attacks/deaths, we need to patch audio to them
variable sound distance needed, some stuff needed to fade less, some more!
tacke on hit no snd[multiple?]
toad also on hit doesn't work
elongata has same problem, probably too low dist
E3D_VarLoadSound2D added

6:55 PM 7/21/2016
bugfix for very short sounds
add sounds for kitana
missing sounnds problem
FHG bad sound needs fixing, down/hit problem

1:49 PM 7/20/2016
long digits ruin offset :) in gui

9:42 AM 7/19/2016
right mouse button as discard - drop object, will need new spawner for that![something easy to use][similar stuff for basic equip and item transfer!]
some random items adding on start
we have nice function called spawn around, we should try it
we need to modify it to supply our own object
we can't reuse previous actor, because we still need to add it to a tree
hashed name storage implemented for quick data lookup that we use to create them
bugfix for dual actors resolved
Objects/Mushrooms/ forgot resolver
disabled Batchable now gets erase to prevent wrong invisible grouping of items
full empty remove fix
bugfix for map crash
GenerateTest has a problem where raycast didn't work
idea, how about create a big plane with many items that we need, we position them like grass[special render mode][and the size of plane is 200 - that would be special batch]
even better idea, have big batches of stuff, pregenerated and positioned for example, that way we won't spent that money on enter object in our spawner
the point here is we need to make that stuff generalized, not only for grass but for other things too
what can be done about render, we can make e3d_alnvec extgrass and draw them after main one to the same buffers, also set it externally, at least let's try it
grass needs same concept of highY, we can have pure transofm and center below to fix that problem!
our grass is very simple plane, but fougere is solid mesh, how about we enable light computattion for it with flag
add more fougeres
our basic equpment can be done by just selecting equip for special items+for charabase we need CEquip class with fields

9:38 AM 7/18/2016
added more info to stats

10:52 AM 7/17/2016
cleanup incredibly big chances, we need to finally have 1 model of percentage or abs add
crit base
crit boost
patch spells as MLT, as damage amplifyer
remove old dmgmin
EstimateDamage move that function away and replace damage with something normal
implment them[damage boosters] with global damage system
in equip print full players stats )
let's plant our plants on the map to see how they work with grass/trees e.c.
ObjED add fog controls
fixed plant/ground flickering
fougere random spawning nyesy
we have 2 different speed factors, we need to unify them

11:10 AM 7/14/2016
add randomized actual damage to weapon iteself, + boost to everything from weapon
our new grass doesn't need height sampleing, we can get away with just odifiying Y to some -+500 values from the max ground data, but we still have some form of a bledning problem with it[let's try outputtting 1s on left and right and compare grasses, because i think we have a problem there in a shadow department or somewhere else maybe in the bledning]
long awaited animated mesh tree hashing, by using something special for it, we can have same hierarchy and same animation, but animation position and tracking must be unique

10:18 AM 7/13/2016
health/mana quick access implementation
also need to print shortcuts for invitem somehow, such as extended field
detailed mushroom names in nfo part
melee_boost + range_boost as bonuses
new weapon damage
need names for mana, health e.t.c. as well, something like GetInfo already exists we can make GetClasName
replace bad function onInfo with generic string
with drop we have a problem with sounds not finishing because drop is called for them, this can be fixed by having pool of sounds that are cleaned once they are finished playing, deeper debuging would be making cAudio in debug

RPG Idea Update [6/5/2016-> 7/13/2016]

RPG Idea Update [6/5/2016-> 7/13/2016]

News 4 comments

new chests, improved textures, inventory & equip system.

RPG Idea Update  [5/22/2016-> 6/5/2016]

RPG Idea Update [5/22/2016-> 6/5/2016]

News 1 comment

New class has been added, new items, monster and sky improvements, updated object spawner.

RPG Idea Update [2/14/2016->5/21/2016]

RPG Idea Update [2/14/2016->5/21/2016]


New classes, new monsters and new spells + lots of fixes.

RPG Idea Update[2/6/2016->2/13/2016]

RPG Idea Update[2/6/2016->2/13/2016]

News 1 comment

New sounds, animation rewrite, stamina idea added.


really cool looking

Reply Good karma Bad karma+1 vote

Looks like an awesome game, is there gonna be a single player mode or be MMO only?

Reply Good karma Bad karma+1 vote
s5zone Creator

I'm planning this as a coop game[mmorpg is too hard :D][2-16 players at once], so you can host your own server and play by yourself - single player or with a friend

Reply Good karma+1 vote

I want t post your game in my blog, if you want can see my blog in this url:

Reply Good karma Bad karma+1 vote
s5zone Creator

hi sure you can post it on your blog

Reply Good karma+1 vote

i cant wait for its release it looks promising

Reply Good karma Bad karma+1 vote
Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.

KIFA RPG Windows game

You do not have permission to update the connected twitter accounts.

We recommend you return to the twitter list and browse the links from there. If the problem persists, contact us with the details.