• Advertisement

Search the Community

Showing results for tags 'Custom'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Categories

  • Audio
    • Music and Sound FX
  • Business
    • Business and Law
    • Career Development
    • Production and Management
  • Game Design
    • Game Design and Theory
    • Writing for Games
    • UX for Games
  • Industry
    • Interviews
    • Event Coverage
  • Programming
    • Artificial Intelligence
    • General and Gameplay Programming
    • Graphics and GPU Programming
    • Engines and Middleware
    • Math and Physics
    • Networking and Multiplayer
  • Visual Arts
  • Archive

Categories

  • News

Categories

  • Audio
  • Visual Arts
  • Programming
  • Writing

Categories

  • GameDev Unboxed

Categories

  • Game Dev Loadout

Categories

  • Game Developers Conference
    • GDC 2017
    • GDC 2018
  • Power-Up Digital Games Conference
    • PDGC I: Words of Wisdom
    • PDGC II: The Devs Strike Back
    • PDGC III: Syntax Error

Forums

  • Audio
    • Music and Sound FX
  • Business
    • Games Career Development
    • Production and Management
    • Games Business and Law
  • Game Design
    • Game Design and Theory
    • Writing for Games
  • Programming
    • Artificial Intelligence
    • Engines and Middleware
    • General and Gameplay Programming
    • Graphics and GPU Programming
    • Math and Physics
    • Networking and Multiplayer
  • Visual Arts
    • 2D and 3D Art
    • Critique and Feedback
  • Topical
    • Virtual and Augmented Reality
    • News
  • Community
    • For Beginners
    • GameDev Challenges
    • GDNet+ Member Forum
    • GDNet Lounge
    • GDNet Comments, Suggestions, and Ideas
    • Coding Horrors
    • Your Announcements
    • Hobby Project Classifieds
    • Indie Showcase
    • Article Writing
  • Affiliates
    • NeHe Productions
    • AngelCode
  • Workshops
    • C# Workshop
    • CPP Workshop
    • Freehand Drawing Workshop
    • Hands-On Interactive Game Development
    • SICP Workshop
    • XNA 4.0 Workshop
  • Archive
    • Topical
    • Affiliates
    • Contests
    • Technical
  • GameDev Challenges's Topics

Calendars

  • Community Calendar
  • Games Industry Events
  • Game Jams
  • GameDev Challenges's Schedule

Blogs

There are no results to display.

There are no results to display.

Developers

Developers


Group


About Me


Website


Industry Role


Twitter


Github


Twitch


Steam

Found 55 results

  1. Hi, guys! I have a rather abstract question, because I don't know which side to approach to its solution. So, I would appreciate any information. I have a task to create a simple game that generates floor plans and I following by this perfect algorithm (https://www.hindawi.com/journals/ijcgt/2010/624817/). At the moment I use squarified treemaps (http://www.win.tue.nl/~vanwijk/stm.pdf) and here no problems. I create nested array in which elements are rooms with size. Problems starts when I trying to represent generated "rooms" as edges and vertexes (a, b, c, d steps in attached picture) That representation can give me access to this elements as special "entities" in future game versions. I don't have skills in graphs (and do I need graphs?) and at the moment totally stucked at this step. How can I represent room walls as trees (or graphs?) at this step? Calculate size of squares (rooms) and convert sides to a vectors? Then in loop find shared vectors (same position by "x" or "y") and determine them as shared walls? The instinct tells me that there exist more elegant and efficient ways. Anyway, thanks for any information about this.
  2. A sticky dilemma. I'm part of a team based in USA that produces a virtual world software for remote business purposes. The businesses that use us are our Clients with users from all over the world (and expanding), but primarily in the USA. Our software makes use of customizable human avatars to use in world for each user. We have gotten requests from one of our biggest paying Clients and approval from boss to include religion based avatar clothing options (yamulkes, headscarves, skullcaps and turban head coverings currently, potentially garments too). As our software is used for business, most people want to keep their real world likeness, which may include some of this clothing because it is a part of their identity. Since this is such a sensitive topic on all sides involved and we are in a politically charged climate in the USA, clearly we don't want to offend anyone because they all pay us. In my opinion, even if this request was deemed as a reason for loss on Client's part, it will still be our company providing the service that will be affected primarily. As an emerging company we can't afford to lose users or current/potential Clients over something unrelated to the core mechanics or hardware requirements of the game. How do we put it in the avatar creation menu? Keep it with the other head coverings (so not to upset/offend the religious wear users via segregation) or separate it (to protect from accidental abuse of said garments from ignorant users and offend everybody)? As difficult as it would be for us to do (right now), do we only allow access to certain users? Would that be going too far to request information such as this from users, or for them to have to volunteer it for access? How do we talk about it with the client? When the concern was brought up, they warned us to be careful about using the term "religious wear", so we switched to the more broad "cultural wear", in which they again implied even that term might offend in discussion (because Texas users (very many) would get mad about their cowboy hats not being treated as culturally significant...) and client tactfully avoided telling us what they want us to call it themselves. How do we have a productive conversation though they put out a controversial request and are not willing to speak confidently on it's behalf?
  3. I am an audio researcher developing new audiovisual technologies and currently interested in new applications for games, especially in areas of VR arcades, large immersive spaces, 360 degree installations and even escape rooms. I am wondering if anyone has any ideas how to get 32 independent channels (or more) of audio output in real-time from a game engine like Unity that can be spatially mapped to XY coordinates of virtual objects in a screen, or the XYZ coordinates for a spatial enclosure, when most game engines only allow for fixed pre-defined output formats such as stereo, 5.1 or 7.1. I have an executive summary of the technology online at (the link also includes my email address): http://bit.ly/pixelphonics Thanks, M
  4. I have an idea for a 2D game and engine. I'm looking for someone to join me with making them.
  5. When creating a game, particularly in Unity, is it possible to connect the game to an external device? I’m looking into ways to allow a device or devices to respond to player actions in-game, but I’ve had trouble finding sources on the subject. To help explain sort of what I’m looking into, an example of how I’d like to test out this idea is by having a physical LED light. That LED light would turn on in the real world when a player did a certain action. Is there any way to go about doing something like this?
  6. DMarket Releases Product Version 2.0 Beta

    DMarket, the world’s first and only working marketplace on blockchain for in-game items trading, today announced the release of its product version 2.0 Beta. One of the key features of v2.0 is Steam integration. It allows users to trade and exchange Steam-stored in-game items on DMarket, providing a whole new model of assets monetization. The annual turnover of in-game assets trading is over $10 billion, and it has the potential to reach $450 billion. The average monthly trading volume of skins globally exceeds 60 million items. DMarket v2.0 also features an upgraded version of the Blockchain Explorer that has been supplemented with a cold wallet functionality for enhanced user security. The company launched version 1.0 of its marketplace in October 2017. DMarket Founder’s Mark, a unique piece of memorabilia commemorating the marketplace launch, has already risen in price from a few cents to thousands of dollars. To date, the trading volume of DMarket Founder’s Mark is 486,000 DMC. Most recently, DMarket signed a partnership agreement with Unity Technologies, the world’s most widely-used real-time 3D development platform. This will allow any Unity-based game to easily plug into the DMarket API and integrate in-game items into DMarket blockchain for trading and exchange. Under the agreement, DMarket will build a custom SDK for Unity games integration that will be officially certified by Unity and presented and supported in the Unity Asset Store. About DMarket DMarket is the world’s first and only working blockchain-based marketplace for trading in-game items and turning them into real assets. To learn more or test DMarket in action, check out dmarket.com
  7. DMarket Releases Product Version 2.0 Beta

    DMarket, the world’s first and only working marketplace on blockchain for in-game items trading, today announced the release of its product version 2.0 Beta. One of the key features of v2.0 is Steam integration. It allows users to trade and exchange Steam-stored in-game items on DMarket, providing a whole new model of assets monetization. The annual turnover of in-game assets trading is over $10 billion, and it has the potential to reach $450 billion. The average monthly trading volume of skins globally exceeds 60 million items. DMarket v2.0 also features an upgraded version of the Blockchain Explorer that has been supplemented with a cold wallet functionality for enhanced user security. The company launched version 1.0 of its marketplace in October 2017. DMarket Founder’s Mark, a unique piece of memorabilia commemorating the marketplace launch, has already risen in price from a few cents to thousands of dollars. To date, the trading volume of DMarket Founder’s Mark is 486,000 DMC. Most recently, DMarket signed a partnership agreement with Unity Technologies, the world’s most widely-used real-time 3D development platform. This will allow any Unity-based game to easily plug into the DMarket API and integrate in-game items into DMarket blockchain for trading and exchange. Under the agreement, DMarket will build a custom SDK for Unity games integration that will be officially certified by Unity and presented and supported in the Unity Asset Store. About DMarket DMarket is the world’s first and only working blockchain-based marketplace for trading in-game items and turning them into real assets. To learn more or test DMarket in action, check out dmarket.com View full story
  8. If you have worked on somebody else’s project, you know how hard it is to makes sense of long blocks of complicated codes not written by you. There were many reasons Apple introduced Swift Programming Language in 2014 to replace Objective-C, Apple’s primary programming language since 1996. The main reason was getting a piece of work done without the programmer having to write long lines of codes and raise readability of the program written. For example, Swift, unlike Objective C, supports functional programming, doesn’t need instance variables and to state the type explicitly, and has the ability to map raw value to enum directly. Swift is, indeed, the iOS development language for lazy developers. Of course, Swift supports the traditional programming paradigms based on the rules of mathematics like any other languages. Sometimes, developers have no option but to use them. However, most of the time, Swift programmers can do away with fewer lines of code. I will validate my point with a few code examples: 1. Swift extensions are a life saver Long, boring codes make an already tough job of a programmer, tougher. For example, writing a program to square a number makes Swift look such an average programming language, it is not in the code example below. func square(x: Int) -> Int { return x * x } var squaredOFFive = square(x: 5) square(x:squaredOFFive) // 625 As I said, Swift makes way for smaller, concise code. In this example, the credit goes to Swift extensions. Squaring a number seems like a cakewalk. extension Int { var squared: Int { return self * self } } 5.squared // 25 5.squared.squared // 625 Did you know unlike Objective-C categories, Swift extensions do not have name? 2. Use Generics and avoid creating unnecessary functions Three functions and three variables are an overblow to write such a minuscule program. Swift doesn’t seem to add any value to the programmer in the following code example. var stringArray = ["Bob", "Bobby", "SangJoon"] var intArray = [1, 3, 4, 5, 6] var doubleArray = [1.0, 2.0, 3.0] func printStringArray(a: [String]) { for s in a { print(s) } } func printIntArray(a: [Int]) { for i in a { print(i) } } func printDoubleArray(a: [Double]) {for d in a { print(d) } } With generics, you can write the above example with a single function in Swift. func printElementFromArray<T>(a: [T]) { for element in a { print(element) } } 3. Use For loop when you want to use While loop While loops are unnecessarily long to write. A single loop to count numbers from 1 to 5 doesn’t have to be 4 lines long. var i = 0 while 5 > i { print("Count") i += 1 } For loops are a complete bliss in Swift. The example below will clear you doubts if you had any. for _ in 1...5 { print("Count") } 4. Use Guard let, not if let If let leads to hideous codes. A pyramid of doom is a big no-no in programming, at least with Swift as the language to develop iOS apps. Look at the code example to welcome new users. Those are nasty nested code. var myUsername: Double? var myPassword: Double? func userLogIn() { if let username = myUsername { if let password = myPassword { print("Welcome, \(username)"!) } } } Abolish the bad, bring the good with Guard let var myUsername: Double? var myPassword: Double? func userLogIn() { guard let username = myUsername, let password = myPassword else { return } print("Welcome, \(username)!") } 5. Exclusive functions vs dependent function You can create two mutually exclusive functions or you can connect between them if you’re looking to write smaller codes. The following code example finds the diameter of a circle using two exclusive functions. func getDiameter(radius: Double) -> Double { return radius * 2} func getRadius(diameter: Double) -> Double { return diameter / 2} getDiameter(radius: 10) // return 20 getRadius(diameter: 200) // return 100 getRadius(diameter: 600) // return 300 However, when the radius and diameter variables dependent on each other, you will make more connections, type less, make fewer typos, result in fewer bugs and thus rarer instances of programming blunders. var radius: Double = 10 var diameter: Double { get { return radius * 2} set { radius = newValue / 2} } radius // 10 diameter // 20 diameter = 1000 radius // 500 6. Enum to Type Safe “Adult”, “Child”, “Senior”. You are not supposed to do hard coding in Swift. The least, there mustn’t arise an event when you have type all these string values for each case, over and again. That’s a big no. Don’t do that, please. switch person { case "Adult": print("Pay $7") case "Child": print("Pay $3") case "Senior": print("Pay $4") default: print("You alive, bruh?") } When you write too much, you lose track and end up making mistakes. Did I mention, Swift has the ability to map raw value to enum directly. Let’s leverage on it. enum People { case adult, child, senior } var person = People.adult switch person { case .adult: print("Pay $7") case .child: print("Pay $3") case .senior: print("Pay $4") } You will never make a typographical error because “.adult”, “.child”, “.senior” will highlight themselves in the Apple’s IDE. 7. If let is hard to get by If let is something you’re going to encounter in every language. The advantage with Swift is you can skip it more often than other programming languages. For example, the code below helps users choose Twitter theme color. var userChosenColor: String? var defaultColor = "Red" var colorToUse = "" if let Color = userChosenColor { colorToUse = Color } else { colorToUse = defaultColor } I can cut the code. This is going to change your life as a programmer. var colorToUse = userChosenColor ?? defaultColor If userChosenColor returns nil, choose defaultColor (red). If not, choose userChosenColor. As simple as that. 8. Conditional Coalescing Hair spike increases your height by a couple of inches. So I tried to write a code to solve the problem, except against Swift convention I used three variable and if else in my code. Will god forgive me? var currentHeight = 185 var hasSpikyHair = true var finalHeight = 0 if hasSpikyHair { finalHeight = currentHeight + 5} else { finalHeight = currentHeight } I am a god-fearing programmer and have utmost respect for the Apple’s primary programming language. So I compacted the code above my measures. This is how it looks now. finalHeight = currentHeight + (hasSpikyHair ? 5: 0) The code above states, if hasSpikeHair is true, add 5 to the final height, if not add zero. May the force be with you. The power of Functional Programming Among many reasons Apple replaced Objective C with Swift as its primary programming languge, one was Objective C’s alienation with functional programming. I have written the program below in Swift as I would have in Objective C that lacks functional programming. The code looks lousy, doesn’t it? var newEvens = [Int]() for i in 1...10 { if i % 2 == 0 { newEvens.append(i) } } print(newEvens) // [2, 4, 6, 8, 10] A simple function will get me rid of the For loop and if let (I hate it) and will reduce the entire code to two lines. Just take a look back and see how much time you wasted writing for-loop. Let’s make the code explicit. Ingenious, isn’t it? var evens = Array(1...10).filter { $0 % 2 == 0 } print(evens) // [2, 4, 6, 8, 10] Functional Programming is prodigious. Functional Programming separates shrewd programmers from everyday programmers. Closure vs Func This is how a normal function looks like in in Swift. I mean this looks a fine piece of code. func sum(x: Int, y: Int) -> Int { return x + y } var result = sum(x: 5, y: 6) // 11 However, who wants to remember the name of the function and the variable when you can do away with remembering either a function or variable. I chose variable in this case: var sumUsingClosure: (Int, Int) -> (Int) = { $0 + $1 } sumUsingClosure(5, 6) // 11 Love your code and it is gonna love you back
  9. Hey everyone, my name is Tom, and I'm the creator for the MMORPG called Zapoco. A text-based MMORPG, set in a zombie apocalyptic setting where you can train, scavenge, fight other players, build safehouses, trade and do a bunch of other cool stuff. I built it to be fully browser based lets you play from any device with a web browser for free, no downloads or personal details required, just an email address I've been working incredibly hard over the past few months on this, and am very proud of what I've been able to accomplish with it, and I hope for some of you to be able to play it and enjoy it as much as I enjoyed making it! I'll also gladly address any comments, questions, criticism, concerns, or anything else you may have (I apologize if this isn't allowed to be posted here, if it's not, feel free to remove it). Thank you. Link: https://www.zapoco.com
  10. Hello All, About 4 months ago I started a community driven Game Development Kit project on gitlab to teach myself OpenGL. It's slowly starting to pick up a bit of attention and i'm looking for more people interested in developing an open source tool which could be use to develop new game engines in the future. The library is written in C++17 and uses OpenGL core profile. Your graphics card must support opengl version 3.3 or higher. If you're interested in this project here is the gitlab: https://gitlab.com/oddly-doddly/salem-gdk There is a wiki page for contributors, but since the project is so new, a lot of the documentation is still in the works. I will be putting up setup instructions for windows, osx, and linux (Debian and arch based) this weekend. If you are interested or have questions, there is a discord link on the project's readme please feel free to contact me through discord or a reply to this thread.
  11. Hi, Recently I have been looking into a few renderer designs that I could take inspiration from for my game engine. I stumbled upon the BitSquid and the OurMachinery blogs about how they architect their renderer to support multiple platforms (which is what I am looking to do!) I have gotten so far but I am unsure how a few things that they say in the blogs.. This is a simplified version of how I understand their stuff to be setup: Render Backend - One per API, used to execute the commands from the RendererCommandBuffer and RendererResourceCommandBuffer Renderer Command Buffer - Platform agnostic command buffer for creating Draw, Compute and Resource Update commands Renderer Resource Command Buffer - Platform agnostic command buffer for creation and deletion of GPU resources (textures, buffers etc..) The render backend has arrays of API specific resources (e.g. VulkanTexture, D3D11Texture ..) and each engine-side resource has a uint32 as the handle to the render-side resource. Their system is setup for multi-threaded usage (building command buffers in parallel and executing RenderCommandBuffers (not resources) in parallel. One things I would like clarification on In one of the blog posts they say When the user calls a create-function we allocate a unique handle identifying the resource Where are the handles allocated from? the RenderBackend? How do they do it in a thread safe way that's doesn't kill performance? If anyone has any ideas or any additional resources on the subject, that would be great. Thanks
  12. This is my first time building a game engine, albeit a 2D one for Android. I've decided to build a simple ECS engine. The game I'm trying to *almost* duplicate at the moment is Doodle Jump. I currently have the following systems running in my update loop, in the given order: 1) Physics (applies gravity) 2) Collision (works by predicting next position based on current position and velocity, and updates the current position on collision) 3) Transform Update (updates all entities based on their current velocities) 4) Render System (Draws to canvas) I have the following questions: I want to write a manager that generates obstacles at, say, fixed gaps and when the player reaches the middle of the screen. This manager will need the current position and velocity of the player. (It finds the player by quering the ComponentManager for all entities having a PlayerComponent) 1) Where should this manager be placed in the game loop? 2) Should it even be a manager? Can such logic lie in systems? 3) Extending upon 2, what really are Systems supposed to handle? Any help is appreciated!
  13. My team and I are developing a game engine! We would like as much help as possible. The project is currently hobby only, but pay will be appropriately rolled out to those who work on the engine. people we are looking for are: Network Programmer Artist For User Interface Physics Programmer Graphics Programmer Prerequisites wanted, but not needed, are: Intermediate C++ knowledge 1 Yr in Game development Industry Thank you for your intrest in the project. You can contact me at my email: thesargkyle@gmail.com or my discord: TheSargKyle#8978
  14. Advice Gameplay vs Story

    What techniques do you use to help develop the plot alongside gameplay when you finally have an idea for a story down?
  15. Hey all, with the announcement of House Marque ditching their current game engine to use Unreal Engine , http://www.playstationlifestyle.net/2017/12/05/housemarques-next-game-will-use-unreal-engine-4/, I wanted to ask how everyone feels of the current state of commercial and custom game engines in the AAA and Indie Space. It seems like more and more studios are starting to switch to commercial engines, either Unity or UE4. Square Enix is creating Kingdom Hearts , Dragon Quest, and FF Remake in Unreal Engine, Rare is using UE4 for Sea of Thieves, Bend is using Unreal Engine for Days Gone, Insomniac Games used Unity for their smaller titles, and the list continues. As a graduate student that is about to graduate, I just wanted to see if the concept of fully creating a game from scratch is becoming a dying breed for engine developers, and I should focus more on creating my projects using these more popular engines, especially from a portfolio perspective. Thank you.
  16. I will be taking inspiration from WoW arenas and would like to make a proof of concept before I begin work. There must be some way I can use a WoW client to isolate Arenas and everything necessary to play them and then design a bit more to polish it. I have no idea how to accomplish this but would like to figure it out, any ideas?
  17. So here's the deal : many many years ago, I saw screenshots of Miegakure, that very famous 4D puzzle-platforming game you probably all know about by now. The thing is, it never came out, not even a playable demo, except at big gaming events that I have no way to get to. As such, I decided a while ago that I had waited long enough and I decided to start working on my own mathematically accurate 4D rendering engine. Without going too deep, the point of it is that 4D objects live in 4D space, and the so-called 4D camera just cuts a 3D slice of the 4D space and of every 4D object in it, which is then passed to your regular run-of-the-mill 3D engine to display. Doesn't sound like anything too hard then. The big problem however comes from optimisation. In 3D engines, you expect your geometry to never change ever, allowing for a lot of cool stuff like GPU caching and the like, and is usually pretty vital for performance. However in a 4D engine, the thing that never changes is your 4D geometry, not the 3D geometry that results from the cutting (that in fact changes every frame). The more mathematically inclined will also think about spatial complexity, since in 4 dimensions you have "a lot more space" to put objects in (purposefully keeping it vague). Moreover, I don't want to go through the trouble of building an actual 3D engine, because a lot of existing engines do that a lot better, and I would probably waste all of my time and motivation working on 3D instead of 4D. As a demonstration, my very first demo uses Three.js and is basically a 4D enigma : http://mattias.refeyton.fr/PAF/slicing . The goal is to get to the other side of the wall where the green cube is, knowing that the wall is too high to jump over and that you can't go around it. You can use ZQSD to move (French keyboard, sorry), and A and E to look "ana" and "kata", which are the 4D equivalent of left and right. You'll excuse the roughness of the whole thing, as it was done in 5 days for a school project (it was the perfect opportunity). This has only been tested on Firefox and Chrome. Hence my question : what do I use as a foundation to work on this ? I'd like to use either C, C++ (for performance) or Haxe (for the multiple targets), if that gives any leads. Of course, doing it from scratch is a totally valid answer, as I would be able to include many 4D-only things (such as 4D lighting and other cool shit) that I'm having trouble seeing how I could implement them in an existing engine. Another thing to take in consideration is that there's probably going to be a 4D physics engine to come with it, and that I'm not sure how hard or easy making that work with an existing 3D engine would be. Also I'm killing two birds with one stone by asking if anybody would be interested by a stream of this. I'm planning to eventually stream my work on this, which would include math on blank paper, and heavily mathematically-inclined discussion, not just coding (relatively little coding in fact).
  18. Character Solver

    So right now for my character solver I compute the time of impact of a character AABB and convex polygons using an algorithm based on "Robust Continuous Collision Detection Between Arbitrary Polyhedra Using Trajectory Parameterization of Polyhedral Features" by J.M.P van Waveren (link) Doom 3 uses this for all of it's collisions so it never has to deal with penetration. This seems undesireable for a couple of reasons so I've decided I'm going to switch to a position solver instead. After some googling I came across Erin Catto's 2014 GDC presention "Understanding Constraints" (link) where he briefly describes how his character solver works. I've written a simple C program (attached to this post) to play around with these concepts and I have some questions that hopefuly I will be able to get answered here. Keys for the test program: ESC - quit r - reset s - step 1-8 - switch to setup 1-8 Here's how I intepret the algorithm: Let's call the current position of the character the 'initial position'. This position never changes during the algorithm. Let's call the position we are trying to move the character to the 'target position'. This position also never changes during the algorithm. Scan the environment for overlap with the capsule at the initial position and construct a list of contact planes. Perform a plane solve on the target position to get the first solve position. Perform a shape cast from the initial position to the solve position. Move to the first hit point and collect new contact planes there. Add these new planes to the list. Perform a plane solve on the target position to get the next solve point. If the distance between the new solve point and the old one is within some epsilon, we are done. Otherwise go back to step 3. Plane solve code: vec3_t p = target_position; vec3_t a = p + local_capsule_a; vec3_t b = p + local_capsule_b; for(uint32_t i = 0; i < max_iter; i++) { vec3_t last_p = p; for(uint32_t j = 0; j < plane_count; j++) { const plane3_t &plane = planes[j]; float d1 = point_distance(plane, a); float d2 = point_distance(plane, b); float dist; if(d1 < d2) dist = d1; else dist = d2; dist -= capsule_radius; if(dist < 0.0f) { p -= dist * plane.n; a = p + local_capsule_a; b = p + local_capsule_b; } } vec3_t delta = p - last_p; if(dot(delta, delta) < epsilon) break; } solve_position = p; Couple of issues: 1. Is this interpretation correct? 2. In the test program I am only adding one new plane per shape cast, is there a reason to collect more (all touching planes)? 3. In the test program I am using the segment planes directly. In 3D I would directly use the polygon planes. If I use the direction from the closest point on the segment to the circle centre I get into situations like this, where the character ends up away from the collision geometry: 4. If I naively add all overlapping planes during step 1 I get into sitations like this: The green circle is at the source position. Step 1 will find both planes and the character will end up in the corner, not touching either segment. In the test program I solve this problem by clearing the plane list after step 2, but this is insufficient as I also need to select the proper planes after a shape cast. I can think of some approaches to solving this problem, but instead of experimenting right away, I'd like to know how other people have solved this. What is a good way to determine which planes to actually use? test.c
  19. The last Alpha release of Lord of Dwarves was very playable. Most of the game features are in, however there is still a lot of work to be done balancing the game and making sure the pacing feels fun and challenging. For the last two months I’ve been working on some of these balance & pacing issues. Below I will talk about a few specific gameplay aspects that were not working and how I’m changing them to make the game feel just right. Skills Originally dwarves had 16 skills they could level up. This large number of skills encouraged the player specialize their dwarves in the wide variety of skills but then punished them when they wanted to focus many dwarves on a task that required only one of those skills. As a result I reduced the number of skills to 7: Hauling, Labor, Crafting, Cooking, Smithing, Needlesmithing, and Engineering. Now the player can have their dwarves focus on collecting wood one day, mining deep the next day, and building a castle on the third. These are all jobs that laborers excel at so they can switch between them while still benefiting from their labor skill value. As a bonus, 7 skills are much more approachable than 16. Health This is an issue I’m still wrestling with but I’ve come up with a system that I’m liking more and more. Previously I created a novel wound system where wounds would be applied to individual body parts in 3 severity levels: minor, severe, and grievous. There was nothing wrong with how this system worked it was just more detailed than it needed to be. From the players perspective they just needed to manage doctors and make sure they had enough bandages. The actual wounds were mostly irrelevant. The small benefit of flavor to know that Stouthammer got a leg wound from a goblin just didn’t fit the pacing of the rest of the game. So I decided to switch to a modified health points system. Now the player can focus on the supply chain for fixing wounds without having to worry about individual wounds. Although less novel a health points system is simple, immediately understandable, and frankly, fun. Additionally I also added “armor points” based on a dwarfs equipped armor. These armor points are lost first in combat and recover quickly after combat. This also has a rewarding side effect. Now when a player goes to all the effort of crafting a suit of armor they can immediately see the benefit of all the work as the dwarfs armor points increase. Renown Previously if the player wanted more dwarves to join their kingdom they needed to craft beds to accommodate the extra population. Low tier beds could only increase population so much before the player had to collect rare materials for higher tier beds. This system was novel and granted a good progression feeling. However it allowed for no diversion in gameplay as it forced the player into making a ton of beds every single game. I have since replaced the bed system with a Renown system. The dwarven kingdom has a renown value based on the value of various things in the kingdom. The player can actively increase their renown in a number of ways. Crafting items (chairs, armor, statues, etc), building structures, and domesticating animals all increase renown, which in turn increases the population. Now the population will increase no matter where the player focuses their attention. Focusing on combat and building arms & armor will increase renown. Likewise avoiding combat and focusing on building structures will also increase renown. As long is your kingdom is growing in some way your population will too. Now the player can try a different play style every game and still progress. Loot Monsters now drop loot! Well to be fair they dropped weapons & armor before, but now they also drop coins, meat, and the occasional rare item. Previously killing monsters didn’t have much of a benefit – except you know preventing civilians from being murdered. Now the coins gathered from monsters can be used to purchase items from markets. Or they can be kept in a vault underground for the boost to renown that they provide! Additionally the player may want to attract more monsters for a chance at rare loot. Scaffolding Building great structures is a very important part of the Lord of Dwarves feel. In addition to looking cool these structures are functional as they hinder and slow invaders from getting to the dwarves. But building them was always too slow. Some background. To build a tall wall dwarves need a boost to get up to the high blocks. This boost is provided by scaffolding that the dwarves can set up. But if the wall is 10 blocks tall by 10 blocks wide that’s 100 scaffolding that needs to be crafted and individually placed next to the wall. It took forever! I’ve recently improved scaffolding so that when a dwarf emplaces it, it creates scaffolding three blocks tall. Now only one third the scaffolding is needed. Additionally better quality scaffolding covers more blocks, up to 9 blocks tall. In this way the dwarves can quickly cover a wall in scaffolding allowing them to build a wall in a much more enjoyable time frame. Hauling In Lord of Dwarves the player harvests resources, collects them, and then uses them in their crafts. Collecting those resources could be very time consuming. If felling a forest generated 100 logs, each of those logs would need to be fetched by a dwarf and brought to a storage area. After about a year of gameplay the player would often have 2000 or more backlogged items waiting to be gathered. A elegant fix to this was to allow dwarves to carry multiple items at once. Now a single dwarf can go out to the forest, pick up three logs, and bring them back nearly tripling their efficiency. Additionally as dwarves get stronger they can carry more and more requiring fewer and fewer dwarves to do the same job. This change has greatly increased the players ability to maintain a clean kingdom and an efficient production chain. Those are some of the major systems I’ve been working the last few months. There are numerous minor systems I’ve also been improving like roads, storage priority, soldier uniform efficiency, and even multi threading the path-finding code. Lord of Dwarves is a big game and I’m trying to get the feel just right before I release it. Wish me luck!
  20. I've been working on creating my own version of Mario Maker or Lunar Magic with the exception that you can create your own graphics and program your own characters from scratch to create any kind of 2D game that one can think of... at least in my opinion! I created the project because I wanted to see if I could do it but, more importantly, to be able to create my own games if I happened to see a games did was not out on the market or simply to recreate a game that already exists and add my own twist to it. Francois DIY is a collection of editors and an engine for playing, creating maps, creating graphics, and programming sprites. The award-winning sprite inspector is personally my favorite. "award-winning" is a pun for "I think it is cool". Games can interface with a real gamepad but are meant for the PC. The experience has you both creating and playing your own games. You create to play and play to hack! Link to demo: Francois DIY Demo Fixed the link. The HTML document was not uploaded. Also on another note the game plays better with a gamepad than the keyboard which seems to be buggy.
  21. Hi I have been planning to start developing my own 2D engine in C++ with my friend. The plan is to have have engine handle user input, display 2D art, play simple audio and work on Android and Windows by next Summer. For starters I think that I'll need a way to handle input. I DON'T want to use libraries like SDL, so where should I start? IF I have to use libraries, they must be header-only. I don't want to have dependencies. I know how to read input with cin, but games require real-time input. So, what is good place to start handling input for both Windows and Android?
  22. Hello, I am in need for somebody to come in and create a new battle script for my browser game. The current one that is being used is 13 years old and needs to be re-written. Needs to use existing stats (strength / intellect, agility, endurance), as well as item (weapon / spell, armour / cloak, helm / scepter, shield / field) stats, bonus` received from various features in the game. My game is Land of Nevard (https://www.landofnevard.net) Contact me at dravenlon@gmail.com
  23. Hello, I am looking for a team to stop developing project alone and start doing bigger things. I would like a team that is organized and serious even of it is just a hobby. I don't want a project to be dropped every week and the team to disband after 2 months. Even though it is a hobby the quality and complexity of the game should be on par with a game that would be released on a major platform. I have experience with UE4, Unity and making my own engine with OpenGL. I prefer UE4 for 3D and Unity for 2D but I am willing to work with both. Every one of the games I worked on (personal project) involve multiplayer and netcode, I used what UE4 provided but for unity I used Forge Remastered which gave me a bigger control on how to optimize everything. I play several instruments, know about game design and am able to do small modeling task but I am before everything a programmer. I play mostly competitive fighting games these days (SFV, MvCi, GG, T7) but before I started getting serious into these types of games it was mostly FPS (CS1.6, UT2k4, Quake 3) and Dota-like. As you can see I love competitive multiplayer games but I play solo games too. I have a preference for darker theme games(F.E.A.R, HL, Shin Megami Tensei/Persona, Last of Us, SH2, RE7) even though I play everything offering me a challenge or some peace (Don't Starve, Stardew Valley, Darkest Dungeon, Zelda etc). I do have several ideas for games with a very clear direction gameplay, marketing and art but I am not looking for a team to work on my ideas, I just have them if needed. Feel free to ask questions here or PM me if you prefer. Best regards, rXp
  24. A soldier wakes up in darkness with a headache - Where is he, and how did he get here? Towards The Pantheon: Escaping Eternity is a prequel mystery minigame to the upcoming full length RPG Towards The Pantheon. Follow the journey of this soldier as he must solve puzzles and explore to escape from nowhere, discover how he came to be here, and face what lies ahead. Towards The Pantheon: Escaping Eternity offers a unique experience that provides lore and suggests at some themes that will be found in Towards The Pantheon. Purchase the album on Bandcamp to support development of Towards The Pantheon! https://connorortlinning.bandcamp.com/album/towards-the-pantheon-escaping-eternity-soundtrack Towards The Pantheon: Escaping Eternity is set to release October 12th, 2017. STEAM: http://store.steampowered.com/app/709450/Towards_The_Pantheon_Escaping_Eternity/ ITCH.IO: https://connorort.itch.io/towards-the-pantheon-escaping-eternity GAMEJOLT: https://gamejolt.com/games/ttpee/280482 Follow the development of Towards The Pantheon on social media! Facebook, Twitter, Tumblr, Soundcloud, Instagram, IndieDB, Twitch, Google+, Imgur, Pinterest Follow lead developer Connor O.R.T. Linning on social media! Facebook, Twitter, Tumblr, Youtube, Soundcloud, Twitch, Instagram, Bandcamp
  • Advertisement