Jump to content
  • Advertisement
Honneamise

HEXNET : looking for some feedback

Recommended Posts

screenshot1.jpgscreenshot2.jpgHello,

im looking for some feedback about my latest experiment .

You can find it here :
http://www.honny.net/hexnet
But please before to do that take some minutes to read what follow.

 

In all my previous projects i have always used C language ( C not C++ ), yes i am a very old person.

Some time ago I felt the need to “evolve” in some way, I cant say why exactly.

To be honest in C i have always been able to find a way to solve a problem by myself or a library for a specific task.

Of consequence all this stuff about OOP and Classes was really new to me.

To test this experience i have used Processing.

From what i have understood this was the fastest ( and easiest ) way to setup this kind of project.

Well, if you are reading this you have already understood that this is not really a "complete game",

just a minimalist minesweeper-like similar to the "mini hack" sub-games that you can find in major titles.

Keep in mind that the main goal was to make some experience with basic stuff like :

setup a project

learning OOP and Classes
basic drawing and images loading

handling user input

etc...

 

UPDATE 11/02/2018 : updated new game version and added some screenshots !!!

UPDATE 03/02/2018 : now it exist AT LEAST a path to complete the game :-)

 

Edited by Honneamise
update

Share this post


Link to post
Share on other sites
Advertisement

This is only a concept demo, and the gameplay could be a little boring.

Some ideas to add to the gameplay could be:

-Add a mission timer countdown

-Add some kind of reward for every successful network compromised that you can "spend" to :

a)buy some useable in-game items ( es : health recovery, random uncover of viruses or storages, etc... )

b)buy some upgrade for your computer ( es : more ram= more damage, more hdd = more health, etc...)

-Add a player level, for every mission sucessfull completed  user level is increased and the next map will have more empty cells or more hidden viruses or storages)

 

-and every suggestion you could give me !!!  :-)

Share this post


Link to post
Share on other sites

It plays well but it's too random. My games where either nowhere near possible or I found it by just clicking away the orange points.

Also my first game started in the corner, I had to click away the two points to move and found the network after that and didn't have enough points to win, both points I clicked I had to. This could be a error on your code that checks that every game can be won.

 

Maybe when a person hacks one of the stop points it should show a arrow in the right direction for a short time. Having some kind of recovery option would also be nice.

Edited by Scouting Ninja

Share this post


Link to post
Share on other sites
On 2/2/2018 at 11:28 AM, Scouting Ninja said:

It plays well but it's too random. My games where either nowhere near possible or I found it by just clicking away the orange points.

Also my first game started in the corner, I had to click away the two points to move and found the network after that and didn't have enough points to win, both points I clicked I had to. This could be a error on your code that checks that every game can be won.

 

Maybe when a person hacks one of the stop points it should show a arrow in the right direction for a short time. Having some kind of recovery option would also be nice.

 

Thanks for your answer.

After your observation i have little modified the code so now in every game there is at least a path to win :-)

That was not a faulty code but...  i was just not thinking about this case scenario, I am glad to have posted it here !!! :-P

For some "recovery" items ok, for the direction suggestion a big NO ( we dont want make it too easy, sometimes you have to lose :-P )

Anyway this will be a future implementation, im waiting for more suggestions and critiques from you guys.
 

 

Edited by Honneamise
removed spoiler due to update

Share this post


Link to post
Share on other sites

Hi, finally had time to try it again.

It is much more playable now. However it means that it does get a bit boring.

Spoiler

 

I would like to see some real choices, like finding to paths to the goal but one is longer and the other shorter. A gate blocks both paths with the shorter one more expensive and the longer one cheaper,

The player then has to choose between paying more for the short cut or taking the long cheaper way but risking discovery of a new gate.

 

At the moment it feels too random whether the level will be fun or not.

 

Maybe have some kind level designed parts, that are dropped in at random. A difficulty curve would also be nice.

 

A control improvement: you could allow for the player just to hold down the button when selecting orange blocks, the click-click thing takes too long. Having things move faster will help make it more fun.

 

The game is very good,, a fun little thing to pass the time. The size of the board also allows me to play it on mobile, although not so smooth.

Share this post


Link to post
Share on other sites
On 5/2/2018 at 4:12 AM, Scouting Ninja said:

Hi, finally had time to try it again.

It is much more playable now. However it means that it does get a bit boring.

Maybe have some kind level designed parts, that are dropped in at random. A difficulty curve would also be nice.

A control improvement: you could allow for the player just to hold down the button when selecting orange blocks, the click-click thing takes too long. Having things move faster will help make it more fun.

The game is very good,, a fun little thing to pass the time. The size of the board also allows me to play it on mobile, although not so smooth.

I have update a "revamped" version of the game

1) as you suggested for the learning curve :

-there are now 8 "levels" ( 1-2-3 are just a sort of "tutorial" with 0 difficulty )

2) as you suggested for control improvement :

-you can now hold down the mouse to uncover ORANGE nodes


Anyway keep in mind that i have added a LOT of stuff, so there can be many errors, bugs, etc...

PLEASE tell me if you find any of them :-)

Thanks !!!

Share this post


Link to post
Share on other sites

The art gives a much better sense of what things is about now. Really like it.

No bugs where found and the game was very fun. The timer really helps with the mood.

 

You can be a bit more strict with the difficulty curve, especially with so few levels. The first two levels gave more than enough time to get use to things.  Things have improved a lot from the first.

 

Really good; when I was done I was left wanting more. This is a great concept you have here; with some expansion it will make a fantastic  game.

Share this post


Link to post
Share on other sites

  • Advertisement
  • Advertisement
  • Popular Tags

  • Popular Now

  • Advertisement
  • Similar Content

    • By DevAndroid
      Hello everyone,
      I'm trying to display a 2D texture to screen but the rendering isn't working correctly.
      First of all I did follow this tutorial to be able to render a Text to screen (I adapted it to render with OpenGL ES 2.0) : https://learnopengl.com/code_viewer.php?code=in-practice/text_rendering
      So here is the shader I'm using :
      const char gVertexShader[] = "#version 320 es\n" "layout (location = 0) in vec4 vertex;\n" "out vec2 TexCoords;\n" "uniform mat4 projection;\n" "void main() {\n" " gl_Position = projection * vec4(vertex.xy, 0.0, 1.0);\n" " TexCoords = vertex.zw;\n" "}\n"; const char gFragmentShader[] = "#version 320 es\n" "precision mediump float;\n" "in vec2 TexCoords;\n" "out vec4 color;\n" "uniform sampler2D text;\n" "uniform vec3 textColor;\n" "void main() {\n" " vec4 sampled = vec4(1.0, 1.0, 1.0, texture(text, TexCoords).r);\n" " color = vec4(textColor, 1.0) * sampled;\n" "}\n"; The render text works very well so I would like to keep those Shaders program to render a texture loaded from PNG.
      For that I'm using libPNG to load the PNG to a texture, here is my code :
      GLuint Cluster::loadPngFromPath(const char *file_name, int *width, int *height) { png_byte header[8]; FILE *fp = fopen(file_name, "rb"); if (fp == 0) { return 0; } fread(header, 1, 8, fp); if (png_sig_cmp(header, 0, 8)) { fclose(fp); return 0; } png_structp png_ptr = png_create_read_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL); if (!png_ptr) { fclose(fp); return 0; } png_infop info_ptr = png_create_info_struct(png_ptr); if (!info_ptr) { png_destroy_read_struct(&png_ptr, (png_infopp)NULL, (png_infopp)NULL); fclose(fp); return 0; } png_infop end_info = png_create_info_struct(png_ptr); if (!end_info) { png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp) NULL); fclose(fp); return 0; } if (setjmp(png_jmpbuf(png_ptr))) { png_destroy_read_struct(&png_ptr, &info_ptr, &end_info); fclose(fp); return 0; } png_init_io(png_ptr, fp); png_set_sig_bytes(png_ptr, 8); png_read_info(png_ptr, info_ptr); int bit_depth, color_type; png_uint_32 temp_width, temp_height; png_get_IHDR(png_ptr, info_ptr, &temp_width, &temp_height, &bit_depth, &color_type, NULL, NULL, NULL); if (width) { *width = temp_width; } if (height) { *height = temp_height; } png_read_update_info(png_ptr, info_ptr); int rowbytes = png_get_rowbytes(png_ptr, info_ptr); rowbytes += 3 - ((rowbytes-1) % 4); png_byte * image_data; image_data = (png_byte *) malloc(rowbytes * temp_height * sizeof(png_byte)+15); if (image_data == NULL) { png_destroy_read_struct(&png_ptr, &info_ptr, &end_info); fclose(fp); return 0; } png_bytep * row_pointers = (png_bytep *) malloc(temp_height * sizeof(png_bytep)); if (row_pointers == NULL) { png_destroy_read_struct(&png_ptr, &info_ptr, &end_info); free(image_data); fclose(fp); return 0; } int i; for (i = 0; i < temp_height; i++) { row_pointers[temp_height - 1 - i] = image_data + i * rowbytes; } png_read_image(png_ptr, row_pointers); GLuint texture; glGenTextures(1, &texture); glBindTexture(GL_TEXTURE_2D, texture); glPixelStorei(GL_UNPACK_ALIGNMENT, 1); glTexImage2D(GL_TEXTURE_2D, GL_ZERO, GL_RGB, temp_width, temp_height, GL_ZERO, GL_RGB, GL_UNSIGNED_BYTE, image_data); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_R, GL_CLAMP_TO_EDGE); png_destroy_read_struct(&png_ptr, &info_ptr, &end_info); free(image_data); free(row_pointers); fclose(fp); return texture; } This code just generates the texture and I store the id on memory
      And then I want to display my texture on any position (X, Y) of my screen so I did the following (That's works, at least the positioning).
      //MY TEXTURE IS 32x32 pixels ! void Cluster::printTexture(GLuint idTexture, GLfloat x, GLfloat y) { glActiveTexture(GL_TEXTURE0); glBindVertexArray(VAO); GLfloat vertices[6][4] = { { x, y + 32, 0.0, 0.0 }, { x, y, 0.0, 1.0 }, { x + 32, y, 1.0, 1.0 }, { x, y + 32, 0.0, 0.0 }, { x + 32, y, 1.0, 1.0 }, { x + 32, y + 32, 1.0, 0.0 } }; glBindTexture(GL_TEXTURE_2D, idTexture); glBindBuffer(GL_ARRAY_BUFFER, VBO); glBufferSubData(GL_ARRAY_BUFFER, GL_ZERO, sizeof(vertices), vertices); glBindBuffer(GL_ARRAY_BUFFER, GL_ZERO); glUniform1i(this->mTextShaderHandle, GL_ZERO); glDrawArrays(GL_TRIANGLE_STRIP, GL_ZERO, 6); } My .png is a blue square.
      The result is that my texture is not loaded correctly. It is not complete and there are many small black spots. I don't know what's going on ? It could be the vertices or the load ? Or maybe I need to add something on the shader. I don't know, I really need help.
      Thanks !
    • By LuigiLuigi
      I've been working on my own Metroidvania via GameMaker Studio for the past few years. You play as a bat named Ralph as he goes on an adventure to obtain 7 Crystal Medallions hidden in dungeons with the help of a cult known as the Crimson Fog. Along the way, there will be quests unlocked in Cedrus Village as you progress through the game. I've managed to complete a demo of the game up to the first dungeon and boss fight.
      I have only a PC build available, and the only gamepads I managed to install were Logitech Precision and Xbox PC gamepads. I had some trouble on gamepad detection though, so they may have connection issues. The desktop controls are similar to Terarria's control scheme if it's too much trouble. I don't have any music at this point, I'll need to get someone else to compose it later on. The music I make isn't bad, but it doesn't fit the aesthetic that well.
      I'm really hoping I can get feedback regarding the general content.
      Crimson Fog.0.2.zip
    • By Alexander Winter
      Jumpaï is a game about creating platformer levels and playing them online with everyone. Will you become the most popular level maker or will you be a speedrunner holding world records on everyone's levels? More into casual play? No problem! You can happily play through the giant level database or chill at people's hub. Meet new people, make new friends, learn to master the game by asking pros or ask for people's favorite tricks on level making. Download here: https://jumpai.itch.io/jumpai Discord: https://discord.gg/dwRTNCG   Trailer:      (The following screenshots are older but still a bit representative)  





      Unlike other games of its genre, Jumpaï is about playing levels with everyone in real time. You have the fun to see how other people are playing and get to realize you are not the only one failing that jump!

      The game is currently into development and still have lots to do. I am looking for people willing to help how they can. Developer? Graphist? Play tester? Sound designer? Game designer? I'm welcoming any talent. The project is so big I have a lot of work to do in all areas. Server backend, UI/UX, Game networking, Gameplay and even the website some day. As you can see from the default buttons, the game has been made with LibGDX. This project is a perfect opportunity for you to get better in various fields as well as showing off your skills.

      If you plan to take an important role into the development of the game, we will discuss how you will get paid once the game generates money. Note that I'm not working on the game full-time. I'm studying full-time and working on it is a hobby. The project has started in november 2016 and experiences heavy progress.

      So, are you interested? If so join me on my discord https://discord.gg/dwRTNCG and I'll answer all your questions.

      Additionnal screenshots:
       



       
    • By Adrian Bigaj
      Hello!

      The game: https://www.combo-clicks.com/
      DEV blog (so everyone can read the journey and some history):
      http://www.combo-clicks-dev.com/
      TL;DR
      Feedback for Combo Clicks and also IDEAS for future games will be super appreciated (Hyper Casuals done in 3-4 weeks, each game with React Native).
      I will try to post on my blog atleast on weekly basis (both for gamers and developers) 
      Thank you!




  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!