1. Past hour
2. Being Hired as Co-Writer for an Indie Studio - Question about Fixed + Revenue Share

This matches my experience as well. Rates per word vary hugely depending on a range of factors.
3. Being Hired as Co-Writer for an Indie Studio - Question about Fixed + Revenue Share

Freelance writers I've personally worked with bill by the word. However there are freelancers that bill hourly, and by the project. How much you charge can greatly depend on your customer as well... and what you're writing. Maybe someone else can offer more insight to billing as I'm not a freelance writer myself, I've only hired them.
4. Being Hired as Co-Writer for an Indie Studio - Question about Fixed + Revenue Share

Honestly, it's hard to even give a ballpark idea without knowing a lot of details about the team and project. At this stage we don't know if this is a well run hobby or an actual business, how many people are involved, how important narrative actually is to the project, etc. You can probably get some ideas by searching for guides to setting reasonable freelance rates to get an idea of factors to be considered. If you have an idea of what the other writer is being paid you might judge your own pitch relative to that. Think about how much time and effort you're likely to be putting in to the project, and what you think might be a reasonable compensation for that time. Think about whether your contract allows for additional payment if there is more work than you expected. Do you need the job to pay your bills? If so, you'll need to figure out a sufficient amount, ideally with an added buffer in case you don't find the next job immediately. If it's more of a side project you might accept a lower amount for the experience - but I would still suggest trying to value yourself fairly.
5. Being Hired as Co-Writer for an Indie Studio - Question about Fixed + Revenue Share

Thank you all for the quick replies. I will ask about how payments are made and the contract itself. My next(hopefully last) question is about the fixed amount. As I am being asked directly, what is a good amount to ask for exactly? I know for certain that there is one other dedicated writer besides myself. Up until now, the whole team had been pitching in to help with the narration, but only one was really working on it. I'm being hired to work directly on the main narration and am expected to be the one primarily focused on it once I begin. I understand that there are a huge amount of variables at play here. I am just trying to get a general understanding before I begin negotiations. Thanks in advance.
6. Bumpy World

Yeah explaining stuff in text is away hard for me. I think in my mind I was assuming familiarity with marching cubes but yeah, I probably need more diagrams and stuff. Thanks for your input.
7. Update version 1.6 Change log; Submit to Apple Tomorrow 10/9

Still wishing for that Android and Steam release. I cannot wait!
8. Being Hired as Co-Writer for an Indie Studio - Question about Fixed + Revenue Share

In my experience, revenue sharing isn't really standardised at all. In the worst case people promise it without even creating the legal framework required. Typically in my experience, new independent studios will split equity (ownership of the company) between the workers... Traditionally, royalty payments occurred between a game's publisher and the development company (instead of the development company and its staff). In this traditional model it was extremely common for not a single cent of royalties to be paid out though -- the contracts would usually stipulate that the publisher's costs would be paid off first... And seeing they're hiring themselves to market the game, they can charge themselves whatever they like for their own work. e.g. They can say that their marketing services that bought $10k worth of advertising space were valued at$10M... So even though your game made $1M in revenue, you actually cost them$9M and they're not paying you a cent in royalties. Fun... So, read the actual contract to see if it's actually worth any money at all, or if it's just theoretical. Make sure there actually is a contract, a properly registered company, a framework for how royalties will be paid, and what the tax implications are. If they can't explain how their payments are going to work to you, then they're putting the cart before the horse. As for a fair percentage... I don't think you can come up with than in isolation. A fair method would be to add up the amount of work done by each team member and give everyone a slice of the revenue that's comparable to their slice of the work... e.g. If there's one artist and one programmer, you should get a bigger slice than if there's 50 artists... That said, most games make like \$100 in total revenue, so don't put tooo much stock in a rev share promise if you actually need that money to live off.
9. Being Hired as Co-Writer for an Indie Studio - Question about Fixed + Revenue Share

Welcome to the forums! How "Rev Share" usually works is that each member depending on their deal is provided a % of the income the game generates. Depending on your agreement this might be NET or GROSS. If the developer understands how finances work they will usually never provide a rev share deal based off GROSS earnings. You're not going to be asking for a dollar amount in such a deal, you should ask for a % and that % should be paid in perpetuity. Make sure you get everything in writing and signed, and make sure you have your payment terms clearly defined. I would suggest having a lawyer review the draft if you're new to this. Negotiating your amount depends on a lot of factors. How much negotiating power do you have? How many other people are asking for a % of NET earnings? As you're the Co-Writer, how much are you contributing to the project in comparison to other writers? What value do you put on your contribution to the overall success of the project? Nobody can give you consulting on what to ask for because we don't know anything about the project and the parties involved. I would suggest taking a higher salary and a lower % as opposed to lower salary and high % unless this studio has a track record, or the team has people with industry experience developing commercial titles. People can sometimes under estimate their true costs to acquire a sale, which can leave a company with a negative net profit regardless of high gross revenues, and that is if the game sells at all...
10. Today
11. Being Hired as Co-Writer for an Indie Studio - Question about Fixed + Revenue Share

In general, truthfully? Very poorly or not at all. Expect the amount of revenue shared with you to be close to zero. As a model, revenue share is often offered by less experienced developers who are less likely to successfully complete, release, and market a game. However, you're also getting a fixed payment, so revenue share as an added bonus is nice to have, especially if the developer has a good track record of successful releases. I would negotiate for the highest fixed payment you are able to get, and treat potential revenue share as a nice bonus that may not actually eventuate - that is to say, that if you had the option to do so it would likely be better financially to trade your revenue share for an increased fixed payment. Whatever you agree to, make sure you've got it in writing.
12. RPG coder looking for a project

Howdy, I'm a programmer/designer mainly focused on making story driven RPG adventures. I'm looking for a project to work on as my current project has gone silent Last project was a metroidvania RPG shown below Show me some cool ideas
13. Destroying reference counted objects immediately

@WitchLord, one quick idea that made me wonder - the only difference is creation through global "factory function", not factory itself - isn't it like: for factory behaviour, AS does not increase refcount on top of what it does for handling of the call, because it assumes user is setting refCount to 1 when returning new object - but global function does not assume this, and it additionally increases refCount of the object returned from it? So we end up with 1 refcount from constructor and 1 refcount from Angelscript, even though we don't want it because method is acting like factory and already returned refcount 1? That's why I had idea to initially set it to 0 for creation from method and not factory behaviour, but the order in which it happens is: ++, --, ++, RETURN which meant that if we 0++, then 1-- it ends up deleting itself. I think I can't do much because once I return that object from my C++ makeBox(), it's gone. Andreas, can you confirm the above behaviour for registered global function that would increase refcount when returning something declared like this? And that its indeed different than factory behaviour? asCHECK(engine->RegisterGlobalFunction("CollisionShape@ makeBox(const vec3 &in)", asMETHOD(CollisionShapeFactory, makeBox), asCALL_THISCALL_ASGLOBAL, this)); I guess it totally make sense for non-factory type of functions, especially when Foo@ is a script object (this has to happen because on script side you have no way to increase refcount), but if FooCpp@ is actually on C++ side we can do this manually when returning the object. Most of the time we also want this, but not for factory functions. How to work around it when one can have more factory methods and not necessarily just create through constructor. Here I'd actually need "CollisionShape@-" kind of thing it seems. I wanted to make it explicit by the func name what's created: makeBox, makeSphere, makeCapsule because if I did it thorugh ctor it would not be encapsulated and have to be more in way of CollisionShape(Shapes::Box, boxparam1, boxparam2) which is not really good and can cause problems if user mismatches params & type enum. So the possibility to have global factory functions not registered as behaviour would be great. Although according to the docs this should be possible: A function that creates an object and returns it to the script engine might look like this: // Registered as "obj@ CreateObject()" obj *CreateObject() { // The constructor already initializes the ref count to 1 return new obj(); }
14. Being Hired as Co-Writer for an Indie Studio - Question about Fixed + Revenue Share

Hello! I am new to this forum, but I have decided to make an account in order to, hopefully, gain some clarity on the topic of Revenue Sharing. Recent, I have been offered a position at an indie game company as a Co-Writer on their RPG project. Everything about the position looks good and I can't wait to begin working with them. However, their budget is limited so they have offered me compensation with a fixed price plus revenue sharing. They then proceeded to ask me what amount would be fair. The biggest problem right now is that I have a limited understanding of how this process works, as this is my first jump into this type of field. I have been a long-time freelance writer, but this is foreign territory for me. My question(s) is: How do I know how much I should ask for? How does Revenue Sharing work? What is a fair fixed-price + Revenue sharing model? Finally, are there any references that I can utilize after this? I want to go into this process with as much information as possible, so I seriously appreciate the help. I apologize if this comes across strangely worded. I'm having a hard time putting my thoughts to words right now. Thank you in advance.
15. Being Hired as Co-Writer for an Indie Studio - Question about Fixed + Revenue Share

Please delete this thread. I have reposted it in the correct location. Thanks..

17. Destroying reference counted objects immediately

Thanks for looking at it! The problem is, I can't see any obvious trace of it, nor I recall writing any. Searching through the code also does not show anything, especially when compared to other classes behaviour which is fine. Also - wouldn't it not show like this on the callstack where it looks like 2 refadds are initiated from within script engine, not from the outside? There should be refadd & refdel when AS is dealing with the returned object, but where does that second refadd comes from? It's also initiated within scripting. Here is how makeBox looks: CollisionShapeScriptProxy* CollisionShapeFactory::makeBox(const glm::vec3& halfExtents) { auto handle = store_.emplace(CollisionShape::Type::Box, std::make_unique<btBoxShape>(btVector3(halfExtents.x, halfExtents.y, halfExtents.z))); return makeCollisionShapeScriptProxy(handle); } That's makeBox - it creates an instance (store_.emplace) but this has nothing to do with scripting, it's C++ only and not refcounted. Then it passes the created instance to proxy, which does this: CollisionShapeScriptProxy* CollisionShapeFactory::makeCollisionShapeScriptProxy(CollisionShapes::Handle& handle) { return new CollisionShapeScriptProxy(store_, handle, 1); } Last parameter is initial refCount passed - I was trying to work around the problem, knowing there is one refcount too many coming from the scripting, and for this class only I tried to pass 0 (->release() would not work because it would cause object to be prematurely destroyed) but it didn't solve the issue and crashed. So that's all I have on non-Angelscript side, this call above is what is registered as asCHECK(engine->RegisterGlobalFunction("CollisionShape@ makeBox(const vec3 &in)", asMETHOD(CollisionShapeFactory, makeBox), asCALL_THISCALL_ASGLOBAL, this)); later. When CollisionShapeScriptProxy is created above, its refcount is 1 and then something happens inside the script that changes it - the code for script itself I already pasted. Just for the sake of completion this is part of the base ScriptProxy class that implements refCounting for all the classes (the ones that work and CollisionShape): ScriptProxy(SlotMap<T>& container, const typename SlotMap<T>::Handle& handle) : ScriptProxy(container, handle, 1) { } ScriptProxy(SlotMap<T>& container, const typename SlotMap<T>::Handle& handle, int16_t initialRefcount) : containerRef_(container), handle_(handle), refCount_(initialRefcount) { } void addRef() { VLOG(3) << typeid(T).name() << "[" << this << "]++ (" << refCount_ << ") -> \n" << getCallStack(2,6); refCount_++; } void release() { VLOG(3) << typeid(T).name() << "[" << this << "]-- (" << refCount_ << ") -> \n" << getCallStack(2,6); CHECK(handle_ != SlotMap<T>::NullHandle); if (--refCount_ == 0) delete this; }
18. How We planned Tiberium Secrets RTS, Development Cycle Explained + Discord Open to All

Here: How We planned Tiberium Secrets RTS, Development Cycle Explained + Discord Open to All It's all here: https://www.moddb.com/mods/tiberium-secrets/news/how-we-planned-tiberium-secrets-development-cycle-explained-discord-open-to-all View full story
19. How We planned Tiberium Secrets RTS, Development Cycle Explained + Discord Open to All

Here: How We planned Tiberium Secrets RTS, Development Cycle Explained + Discord Open to All It's all here: https://www.moddb.com/mods/tiberium-secrets/news/how-we-planned-tiberium-secrets-development-cycle-explained-discord-open-to-all
20. Help a newb? SharpDX or DX and .net

Unity sounds Iike overkill for what you’re doing. SharpDX is the way to go and Direct2D is very easy to get going and is ideal for what you’re looking at doing. Performance is surprisingly good under ANY .NET language.
21. How We planned Tiberium Secrets RTS, Development Cycle Explained + Discord Open to All

Here: https://www.moddb.com/mods/tiberium-secrets/news/how-we-planned-tiberium-secrets-development-cycle-explained-discord-open-to-all
22. On learning to build a platform game engine with C and SDL2

I was just warning you in case you didn't know. As for tech, conceptually a game is not very complicated. Input is keyboard/joystick/mouse. Output is an animation, a sequence of full-screen images generated at a 20-50 fps. You have a number of different game-parts (intro, high score, instructions, market (for selecting weapons, oil, tires), and at least one for actual playing a level 😛 ) Each game-part does something like setup_data() # game loop while not done: render_current_situation_to_screen() input = get_user_input() # can be empty if user didn't do anything update_situation(input) # could also use time here to move things that have non-zero speed end where at the end you have to select a new game-part to perform next. You likely also want to update higher level data structures with results or settings (like currently selected goodies, played levels with results, new score, etc.) To generate a full-screen image, you typically load many small images in the setup step, and you draw them many times at the appropriate points in the screen. For tetris, you could have 7x20 grid of squares, where the data says what each cell contains (empty or 'square of block x'). You load an image of an empty square and an image of a full square (with different colours for different blocks) during setup(), and you render the grid of using the correct image as indicated in the data. In update, you move all the non-empty cells one level down every now and then, and when you render it again, it looks like the blocks have fallen a level. SDL has a home-page libsdl.org, with the SDL function reference documentation. It also points at various other resources like tutorials. When I learned SDL1.2, I used the LazyFoo tutorial. Today you'll want to learn SDL2 instead. LazyFoo has that too. I don't think "C for game programming" is a thing, it's C code, except you need more. Maybe you want you look into how to write larger programs. To be honest, I don't think C is a good choice, but ymmv.

24. Help: Solo programmer: What to do about Assets?

I'll throw out option four which has not been mentioned, learn more about procedural generation and take your generic assets and kick them up a notch with shaders.
25. Marbelous | Mobile Platform | Looking to setup a team on Unity

Game Title: "Marbelous" Hi everyone. I'm looking to get together a team to conduct a collaborative project on Unity. I have the ideas and I will be studying the game code, design of levels in every bit of my spare time to get this completed by the end of 2019. However if There is an experienced Blender 3d level designer or texture designer I would very much like to have you on the team and discuss the ideas I have come up with so far while also listening to yours. If anyone has played the regular Nintendo game called "Marble Madness" That is the original inspiration of my game. The intention is to release this game free, with ads, while providing and ad free version for a small price. I am open to speak with anyone on the side just let me know.
26. Frogger GameDev Challenge Extended to November 30

Hopefully you can submit an entry.

28. How to use a specific adapter for fullscreen applications?

Are you enumerating the SharpDX.DXGI.Output objects connected to each DXGI.Adaptor? If you want to render on an Output which is not considered your “Primary Display” by Windows, your application will need to create its main window at the co-orxinates which translate to that Output. Otherwise, it will just be created on your Primary Display and will render using the default Adaptor.
29. Frogger GameDev Challenge Extended to November 30

Very nice... I haven't start anything froggy.. because I was assigned in the remote area : - D
30. The Total Beginner's Guide to Game AI

This is amazing. Thank you.
31. Direct2D for 2D games

I’ve implemented a complete engine using DXGI (for access to a SwapChain and Output devices) and Direct2D. If used properly it’s very fast and is easy to work with. Of particular interest to game developers is the SpriteBatch class, which can punch out thousands of sprites, with transforms and effects, per frame on modest hardware
32. Some New Tools, and Progress on the new Theme.

Haha, Thanks! I'm really grooving on the new story, so expect some more updates soon.
33. rotating using trig functions

Link to the previous discussion where this likely should be discussed anyway instead of in a new topic on the same subject would be helpful to see what has been done already. I also agree with @Lactose, you've been told how to compose "questions" before, it's not difficult in the least either. Also, comment your code! What have you done to debug it? What does that code even do? What is your problem? What is not happening? Extracting information from you is much like getting blood from a rock.
34. Do you need a degree on top of good experience?

Yep. That's enough. Stop trolling threads, please, Fulcrum. As a last note: As well as technical skills and degrees, interpersonal skills are also a key to employment. Failing to realise that you are being obnoxious can be quite damaging to your career.
35. Frogger GameDev Challenge Extended to November 30

Awesome! I'm very glad there is an extension! @Awoken Now you have no excuses!
36. Destroying reference counted objects immediately

It seems to me that your makeBox function is returning the reference to the collisionShape with the refCount already set to 2. Besides creating the actual instance is makeBox keeping a reference somewhere to warrant the refCount to be 2 when returning?
37. Frogger GameDev Challenge Extended to November 30

I've been seeing some people say that they didn't have enough time to enter the latest GameDev Challenge: Frogger, so I'm extending the Challenge to the end of November 30. Hopefully that helps bring in more participants. Cool entries being developed so far!
38. Yesterday

40. Some New Tools, and Progress on the new Theme.

Hello Mk1! I don't really have much specific to say, but just wanted to comment that I'm enjoying following your progress!
41. Requesting a code review

I think he was referring to beginners in the field of game dev. Which I would agree with, fixed time steps do a lot to help them learn. UE4 is NOT a beginner project nor something you should compare to pong 😉
42. rotating using trig functions

When posting a question, what are you supposed to include in the post? Hint: You've been told probably a dozen times or more.
43. rotating using trig functions

well rutin has helped with this problem, but I wanted to get more input. I am still working on my rotation algorithm. I want my bullet sprite to rotate around my plane sprite and shoot in the same direction as my plane is facing. glTexCoord3f(0.0f, 0.0f, 0.0f); glVertex3f(cos(angle) - sin(angle), sin(angle) + cos(angle), 0.0f); glTexCoord3f(1.0f, 0.0f, 0.0f); glVertex3f(cos(angle) - sin(angle), sin(angle) + cos(angle), 0.0f); glTexCoord3f(1.0f, 1.0f, 0.0f); glVertex3f(cos(angle) - sin(angle), sin(angle) + cos(angle), 0.0f); glTexCoord3f(0.0f, 1.0f, 0.0f); glVertex3f(cos(angle) - sin(angle), sin(angle) + cos(angle), 0.0f); glEnd(); here is the code I am using.
44. Dual Quaternion Skinning Artifacts

You just did. We don't like to change the topic to solved etc as people might still have things to add to it that could be helpful to someone else later. Glad you got it worked out though!
45. Do you need a degree on top of good experience?

@Fulcrum.013 You really don't have that voice in the back of your head that tells you when enough is enough do you? When a moderator AND an administrator both tell you to stop, you just keep on pushing it. No sense a ban might be in your near future? Most people have those spider senses but apparently with your amazing degree you didn't do well in that course 😉 That or you are one amazing troll just out to get this thread closed. Either way, enjoy!
46. Do you need a degree on top of good experience?

The original post can’t possibly justify 11 pages. This needs to be split or closed. L. Spiro
47. wavefronts in-flight

I think this takes much longer too, even accessing LDS takes longer than 4 cycles i guess (anyone knows some numbers?) What you mean is probably to read data from registers. You want to have data in registers if possible, (which now is accessible even from neighboring threads with SM 6.) Secondly you want to cache data to LDS memory which is much faster than global memory. This is also the common way to share data over the whole workgroup and mostly key to efficient parallel algorithms. It's also the main difference between pixel and compute shaders. If the term 'Prefix Sum' is new to you in this context, i recommend the OpenGL Super Bible chapter about compute shaders no matter what API you use - it was enlightening to me Finally you want to access global memory as less as possible. The 4 cycles per instruction should be correct, because one GCN SIMD is 16 lanes wide, and a wavefront is executed in 4 alternating steps. But AFAIK this has no effect on how we should program.
48. DX11 Viewports or Clipping of Windows/Menus inside of game

So I'm getting to the point in my engine design that I'm trying to implement some dynamic menus. It's going well, until I've hit a recent conceptual stumbling block that I'm not how to sure to get around. It has to do with drawing resizable, internally scrollable windows inside each monitor. Some background first. I'm creating a multi-monitor capable game, so I needed to roll my own GUI. The window & menu system works, for fixed sized windows. My menus are all made many sprites, utilizing DirectXTK SpriteBatch, and text via SpriteFont. I load the images using WICTextureLoader. For the case where I have activated elements in a window exceed the size of the window, that's okay. They need to be visible, and there's only one active element at a time. The problem comes with hiding passive elements as they are scrolled out of their parent window, and then drawn outside of it. Also of note: I have a *single* application drawing to all of the monitors, not multiple applications drawing to multiple monitors. So solutions based around options that use the singleton pattern are not workable. (This, sadly, omits most GUI frameworks). I've looked at using viewports, but I can't seem to get them to work properly when I'm dealing with multi-monitor displays, especially when the monitors have different resolutions, and are not aligned perfectly. I'm not even sure where to begin if I have overlapping viewports, ie, overlapping windows. Should I keep struggling with viewports, or should I look into a way of dynamically clipping the images/text/sprites as they are edged out of the windows? If so, what is such a technique called, and where can I read up more on it? Or am I missing a forest for the trees, and there's an easy solution to my problem that I've overlooked?
49. wavefronts in-flight

Wow, it takes 4 cycles to read data even if it's already in cache and 4 cycles to execute one wavefront(since it takes 1 cycle to run 16 items and one wavefront is 64 items)). Thank you, now it's very clear.
50. Requesting a code review

Not sure I agree, at the very least many of the most popular engines in use today don't use this method (UE4 doesn't even used a fixed physics timestep, it is semi-fixed.) Most commonly I see systems get ticked at a fixed rate if they need it (like physics usually is). Other systems tend to just be fed a float delta time, which works fine in practice as long as you don't accumulate large numbers, since those result in significant floating point deviation. Then again I could say the same for globals and/or singletons, almost every major game engine uses them despite them becoming a warzone-topic whenever mentioned here. A more useful distinction is to understand the benefits and negatives of different architectures and pick one that suits your needs. A fixed timestep for physics updates isn't a bad idea.
51. Unsettled World

Album for Unsettled World
52. Some New Tools, and Progress on the new Theme.

Say hello to the new Mark1 Android, this one's dressed up for some general labor and/or construction duties. There might be a few versions in the game (mk1,2,3,etc.) but those will only be simple cosmetic changes from a modeling perspective. Still working on the textures/etc.. More bots in the works. I found a free procedural texture software that seems pretty legit. http://pixaflux.com/ It's getting the job done for me so far. Still learning it though, will probably post a more detailed review of it later. I've made some simple changes to the environment as you can see above, here's a better view: a Setting the stage a lot better for a Massive Garbage Moon now. For the stars I generated a quick cubemap using this very cool software I also just found: http://alexcpeterson.com/spacescape/ It seems to crash if I try exporting to 4k, but 2k works just fine so far. Again, I'll probably post a better review of this one later as well. Time permitting. haha! No big technical or code progress reports, still cleaning things up and working on the new look and some more bot characters to work with. Once I have all the bots modeled, I'll have to break them all up into bot parts that will be strewn about and piled high all over the landscape. All for now, will post more pics later.

• GameDev Challenges

Open Group  ·  86 members

• For Beginners

Public Group  ·  1 member

1. 1
Rutin
39
2. 2
3. 3
4. 4
5. 5