• Advertisement
  • Popular Tags

  • Popular Now

  • Advertisement
  • Similar Content

    • By Alex Daughters

      Hi, I am currently a college student studying to become a Game Developer. I need to interview current game developers for a class I'm taking. if anyone seeing this could answer just the 5 questions that I have provided below as well as your name, current position, and how many years you've been in the game industry. I'd really appreciate any responses. 
      Year in the industry:
      What was the starting salary?
      How many hours do you work?
      What did you learn outside of school that was useful?
      How did you get your job and how hard was it to find it?
      how was this job different than you expected it to be?
      Thank you for your time.
      -Alex Daughters
    • By RyRyB
      I got into a conversation awhile ago with some fellow game artists and the prospect of signing bonuses got brought up. Out of the group, I was the only one who had negotiated any sort of sign on bonus or payment above and beyond base compensation. My goal with this article and possibly others is to inform and motivate other artists to work on this aspect of their “portfolio” and start treating their career as a business. 
      What is a Sign-On Bonus?
      Quite simply, a sign-on bonus is a sum of money offered to a prospective candidate in order to get them to join. It is quite common in other industries but rarely seen in the games unless it is at the executive level. Unfortunately, conversations centered around artist employment usually stops at base compensation, quite literally leaving money on the table.
      Why Ask for a Sign-On Bonus?
      There are many reasons to ask for a sign-on bonus. In my experience, it has been to compensate for some delta between how much I need vs. how much the company is offering.
      For example, a company has offered a candidate a position paying $50k/year. However, research indicates that the candidate requires $60k/year in order to keep in line with their personal financial requirements and long-term goals. Instead of turning down the offer wholesale, they may ask for a $10k sign on bonus with actionable terms to partially bridge the gap.
      Whatever the reason may be, the ask needs to be reasonable. Would you like a $100k sign-on bonus? Of course! Should you ask for it? Probably not. A sign-on bonus is a tool to reduce risk, not a tool to help you buy a shiny new sports car.
      Aspects to Consider
      Before one goes and asks for a huge sum of money, there are some aspects of sign-on bonus negotiations the candidate needs to keep in mind.
      - The more experience you have, the more leverage you have to negotiate
      - You must have confidence in your role as an employee.
      - You must have done your research. This includes knowing your personal financial goals and how the prospective offer changes, influences or diminishes those goals.
      To the first point, the more experience one has, the better. If the candidate is a junior employee (roughly defined as less than 3 years of industry experience) or looking for their first job in the industry, it is highly unlikely that a company will entertain a conversation about sign-on bonuses. Getting into the industry is highly competitive and there is likely very little motivation for a company to pay a sign-on bonus for one candidate when there a dozens (or hundreds in some cases) of other candidates that will jump at the first offer.
      Additionally, the candidate must have confidence in succeeding at the desired role in the company. They have to know that they can handle the day to day responsibilities as well as any extra demands that may come up during production. The company needs to be convinced of their ability to be a team player and, as a result, is willing to put a little extra money down to hire them. In other words, the candidate needs to reduce the company’s risk in hiring them enough that an extra payment or two is negligible.
      And finally, they must know where they sit financially and where they want to be in the short-, mid-, and long-term. Having this information at hand is essential to the negotiation process.
      The Role Risk Plays in Employment
      The interviewing process is a tricky one for all parties involved and it revolves around the idea of risk. Is this candidate low-risk or high-risk? The risk level depends on a number of factors: portfolio quality, experience, soft skills, etc. Were you late for the interview? Your risk to the company just went up. Did you bring additional portfolio materials that were not online? Your risk just went down and you became more hireable.
      If a candidate has an offer in hand, then the company sees enough potential to get a return on their investment with as little risk as possible. At this point, the company is confident in their ability as an employee (ie. low risk) and they are willing to give them money in return for that ability.
      Asking for the Sign-On Bonus
      So what now? The candidate has gone through the interview process, the company has offered them a position and base compensation. Unfortunately, the offer falls below expectations. Here is where the knowledge and research of the position and personal financial goals comes in. The candidate has to know what their thresholds and limits are. If they ask for $60k/year and the company is offering $50k, how do you ask for the bonus? Once again, it comes down to risk.
      Here is the point to remember: risk is not one-sided. The candidate takes on risk by changing companies as well. The candidate has to leverage the sign-on bonus as a way to reduce risk for both parties.
      Here is the important part:
      A sign-on bonus reduces the company’s risk because they are not commiting to an increased salary and bonus payouts can be staggered and have terms attached to them. The sign-on bonus reduces the candidate’s risk because it bridges the gap between the offered compensation and their personal financial requirements.
      If the sign-on bonus is reasonable and the company has the finances (explained further down below), it is a win-win for both parties and hopefully the beginning a profitable business relationship.
      A Bit about Finances
      First off, I am not a business accountant nor have I managed finances for a business. I am sure that it is much more complicated than my example below and there are a lot of considerations to take into account. In my experience, however, I do know that base compensation (ie. salary) will generally fall into a different line item category on the financial books than a bonus payout. When companies determine how many open spots they have, it is usually done by department with inter-departmental salary caps.
      For a simplified example, an environment department’s total salary cap is $500k/year. They have 9 artists being paid $50k/year, leaving $50k/year remaining for the 10th member of the team. Remember the example I gave earlier asking for $60k/year? The company cannot offer that salary because it breaks the departmental cap. However, since bonuses typically do not affect departmental caps, the company can pull from a different pool of money without increasing their risk by committing to a higher salary.
      Sweetening the Deal
      Coming right out of the gate and asking for an upfront payment might be too aggressive of a play (ie. high risk for the company). One way around this is to attach terms to the bonus. What does this mean? Take the situation above. A candidate has an offer for $50k/year but would like a bit more. If through the course of discussing compensation they get the sense that $10k is too high, they can offer to break up the payments based on terms. For example, a counterpoint to the initial base compensation offer could look like this:
      - $50k/year salary
      - $5k bonus payout #1 after 30 days of successful employment
      - $5k bonus payout #2 after 365 days (or any length of time) of successful employment
      In this example, the candidate is guaranteed $55k/year salary for 2 years. If they factor in a standard 3% cost of living raise, the first 3 years of employment looks like this:
      - Year 0-1 = $55,000 ($50,000 + $5,000 payout #1)
      - Year 1-2 = $56,500 (($50,000 x 1.03%) + $5,000 payout #2)
      - Year 2-3 = $53,045 ($51,500 x 1.03%)
      Now it might not be the $60k/year they had in mind but it is a great compromise to keep both parties comfortable.
      If the Company Says Yes
      Great news! The company said yes! What now? Personally, I always request at least a full 24 hours to crunch the final numbers. In the past, I’ve requested up to a week for full consideration. Even if you know you will say yes, doing due diligence with your finances one last time is always a good practice. Plug the numbers into a spreadsheet, look at your bills and expenses again, and review the whole offer (base compensation, bonus, time off/sick leave, medical/dental/vision, etc.). Discuss the offer with your significant other as well. You will see the offer in a different light when you wake up, so make sure you are not rushing into a situation you will regret.
      If the Company Say No
      If the company says no, then you have a difficult decision to make. Request time to review the offer and crunch the numbers. If it is a lateral move (same position, different company) then you have to ask if the switch is worth it. Only due diligence will offer that insight and you have to give yourself enough time to let those insights arrive. You might find yourself accepting the new position due to other non-financial reasons (which could be a whole separate article!).
      Conclusion/Final Thoughts 
      When it comes to negotiating during the interview process, it is very easy to take what you can get and run. You might fear that in asking for more, you will be disqualifying yourself from the position. Keep in mind that the offer has already been extended to you and a company will not rescind their offer simply because you came back with a counterpoint. Negotiations are expected at this stage and by putting forth a creative compromise, your first impression is that of someone who conducts themselves in a professional manner.
      Also keep in mind that negotiations do not always go well. There are countless factors that influence whether or not someone gets a sign-on bonus. Sometimes it all comes down to being there at the right time at the right place. Just make sure you do your due diligence and be ready when the opportunity presents itself.
      Hope this helps!
    • By menyo
      I have a MongoDB db on a server operated by Kryonet. Obviously I need to be able to query the database from the client for adding, removing, requesting all kind of assets. Now I have written the code to request, add and remove fighters on the Kryonet network I am wondering if there is a better way to do this. I feel it's a bit repetitive, especially when I need to implement this for all other assets the player can own and other players assets when needed. The way I am currently approaching this is the same as my chat/lobby system which works great but I was wondering if anyone could see improvement on my code or a complete different way that is much more scalable perhaps.
      public class ClientAssets { public static final int FIGHTER_REQUEST = 1; public static final int FIGHTER_RESPONSE = 2; public static final int FIGHTER_ADD = 3; public static final int FIGHTER_REMOVE = 4; public static void Register(EndPoint endPoint) { Kryo kryo = endPoint.getKryo(); kryo.register(FighterRequest.class); kryo.register(FighterResponse.class); kryo.register(FighterAdd.class); kryo.register(FighterRemove.class); } static public abstract class AssetPacket { public int packetId; public AssetPacket() { } } /** * Packet to request all owned fighters */ public static class FighterRequest extends AssetPacket { public ObjectId playerId; public FighterRequest(ObjectId playerId) { packetId = FIGHTER_REQUEST; this.playerId = playerId; } public FighterRequest() { } } /** * Receiving fighter data from server */ public static class FighterResponse extends AssetPacket { public Fighter fighter; public boolean add; // Add or remove public FighterResponse(Fighter fighter, boolean add) { packetId = FIGHTER_RESPONSE; this.fighter = fighter; this.add = add; } public FighterResponse() { } } /** * Adds a fighter to player assets */ public static class FighterAdd extends AssetPacket { public ObjectId fighterTemplateID; public FighterAdd(ObjectId fighterTemplateID) { packetId = FIGHTER_ADD; this.fighterTemplateID = fighterTemplateID; } public FighterAdd() { } } /** * Removes fighter from assets. */ public static class FighterRemove extends AssetPacket { public ObjectId fighterId; public FighterRemove(ObjectId fighterId) { packetId = FIGHTER_REMOVE; this.fighterId = fighterId; } public FighterRemove() { } } } To elaborate a bit more, this code will communicate between client and server. When receiving a request on the server it will lookup the request in the database. The client will store it for displaying the assets. A specific thing I am unsure about is the FighterResponse.add boolean. I need to be able to remove and add fighters, I guess I am better off with a FighterAddResponse and a FighterRemove response so I will send one boolean less each time this packet is send. But this will create even more repetitive code.
    • By GamblingTec
      Gambling platform for Game Developers
      I am looking for feedback in terms of the usefulness of a platform designed to assist developers with gambling related games (that we have built). 
      We believe these types of games can be highly lucrative however the industry does not make it easy for indie styled game developers to produce gambling related games without a mountain of bureaucracy and expense involved (when offering them to paying users). In many instances, the games will not be supported by established casino operators (if they are too unusual) and for game developers to set up licensed infrastructure in order to support new concepts, is expensive.
      While our platform has been built and we are working with more traditional styled casino game developers, I feel there is a market for non-traditional types of games. There is no reason why multi-player games or skill-based games cannot have a gambling element to it and there is no reason why it should be difficult to put in front of a paying audience.
      Here are some examples:
      Imagine, for instance, Pac-man was "gamblingafied" (there we go, we have just invented a new word), each time you eat a pellet you win a few cents and each time you are gobbled up by a ghost you lose a few cents (as a simple example). 
      Or perhaps you produce a multi-player boxing game where contestants fight each other. The audience can then bet for or against given players... The same could be styled around a virtual formula1 or Indy car racing...
      How our platform works:
      What we have done to provide a service where you plug your game into our API allowing our platform to manage licensing/payments/registration/authentication on behalf of your game without the need for you to setup any licensing related infrastructure. Once integrated, operators are free to offer the game to their customers.
      How you make money:
      With every bet, a % of the GGR (Gross Gaming Revenue) is paid to the game publisher.
      Licensing / payments:
      We currently have a Curacao gambling license, however, our platform has been designed to support multi-jurisdictional licensing  (as and when we apply for them). Payments are coded for gambling so USA players would be able to sign up, but they would not be able to pay through the system (until laws change and we are able to apply for local licensing). However, many other jurisdictions are supported under the current license.
      Current games plugged into the system:
      Current games integrated are what you would expect to see in a normal online casino: slots, tables games and poker. One of our developers has built a unique card game (Oh Hell Stackpot) and another has produced an unusual poker concept. We have a developer who has plugged in lottery game procurement which offers a play on world lottery games (the app uses risk agents for fulfilment). These, of course, are what we would call "traditional casino games".
      What I am looking for:
      What I am hoping to get from this community is feedback in terms of "non-traditional" games that could be gamblingafied . If you could use our platform, what would you build?
      Perhaps a test case for the community?
      If you have built a gambling-related game, let me know, if interesting enough, perhaps we can start a thread documenting the process of integrating it into our sandbox environment.
      Lets discuss!
    • By x3ph3r
      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?
  • Advertisement
  • Advertisement

What is a Game Engine

Recommended Posts

Hello. I would like to ask you all:

What are the features that a program/library/module needs to have to be called a 'game engine' I have been working for years on my little and still very incomplete Python 3D engine and I found today that it is not mentioned in any list of engines! While this has the advantage of not adding pressure on me, it still feels a little wrong. I'm thinking that it is ignored because it still lacks something very important that prevent it from being considered a real game engine., but I don't see what. Right now it features:

  • Forward Rendering with OpenGL 3.2
  • GPU Animations
  • Sounds
  • Physics
  • Cross platform windowing
  • Totally incomplete GUI (Panel, Image, Label)
  • Lights
  • Full screen effects system (none included)
  • Plug-in system (None included)
  • The beginning of an Editor

What do you think it needs, besides more work on what it already has? Thanks.

Edited by JRGarcia

Share this post

Link to post
Share on other sites

For a direct answer:

I'll say an engine needs enough to put together a game.  I don't know if your parts are good enough for the game you want to make. It might be enough, it might not be.

There is a distinction somewhere, but I'm not sure exactly where it is.  On the one side you've got a library or tool.  It is a part of making a game and does much work for you, but it is not yet an engine.  On the other side you've got an engine that does all the things you need, just add your game-specific bits.  Somewhere along the line a library turns into an engine.


For the less direct answer:

I'd suggest not trying to build an engine as the goal.  I've helped in the creating of engines for studios a few times, and never was it a case where the engine was a goal.  First was a game with a big investment.  Then game-specific parts were removed and it was used for a second game.  After several rounds, what remained between each game was considered an engine and allowed for extremely rapid development relative to the first few rounds.

Make a game. Reuse your parts, as above, and if they do what you need to make the games you want to make, then it is enough for you.  Otherwise, it is not.  And that distinction is unique to the games being made.

Share this post

Link to post
Share on other sites

Thank you @frob, that is very helpful. I actually started trying to put together a little game, but after some tries, no free engine/game making system fulfilled all my requirements, so I began making my own engine. Now I can't find the time to make the game, because I spend the time adding features to the engine. I suppose I have to quit doing that and finish the game. Thank you! :D

Share this post

Link to post
Share on other sites

Yeah I  define an engine as "after you make a game, all the bits you can reuse to make a second game, are the engine". 

So the only way to prove an engine is complete is to make a game :)

Or at least plan out a game and work out what kinds of frameworks and tools might be required. 

Share this post

Link to post
Share on other sites
On 16/07/2017 at 4:59 AM, JRGarcia said:

I have been working for years on my little and still very incomplete Python 3D engine and I found today that it is not mentioned in any list of engines

I guess many engine developers are in the same situation than you.

Whereas it can have technical reasons as you are looking for, it might also just have publishing reasons. For example, if your website changed often, or if your website is not well referenced (threw google or so). Or if you didn't make any promotion in any visited and relevant websites (like this one or other forums)...

The other thing is that there are now many and many engines. I also suspect wikipedia to list 'little' engines when their authors or workers are adding them :) Or once they start to get some notoriety, so as Hodgman said, games should be published using your engine.


Share this post

Link to post
Share on other sites
On 16.7.2017 at 4:59 AM, JRGarcia said:

and I found today that it is not mentioned in any list of engines

As any previous person wrote, why mention something that has never ben proven by a successfull project or at least some very terrifying showcase? The core question is why do you care when writing for your own?

I would also define anything used in a game that could be reused is part of the engine but there are two different approaches to take a view on this. You could have a specialized game engine, lets say for RPGs so some gameplay code also belongs to the engine (inventory system, tech-tree, ...) or a more general kind; no gameplay code will belong to the engine (game AI does not but Behavior Trees do)

Share this post

Link to post
Share on other sites

Thank you all for your answers. I think now is safe to say that, resuming what's being said so far, a simple, practical definition of what a game engine is would be:

"All what is left of a game after removing the game specifics, as long as those remaining pieces can be used to make a second game"

As additional points we could divide the engine's requirements by the type of engine we want:

1 A genre-specific engine can keep much of the first game's logic, since the second game can reuse this logic.

2 An engine that starts as a fully-fledged business idea (clear money earning strategy, well backed) in opposition to a 'made-by-hobby' work, can be created with a ' terrifying showcase' as impulse instead of waiting to have a complete, successful game to be considered an engine.

Whit this ideas, I can finally 'stop' working on the engine and move on to some other more practical projects (like maybe, a game). Thanks.

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Advertisement