-
Posts
17 -
Joined
-
Last visited
Everything posted by 747823
-
Why I don't like Skyrim overall. 1. Graphics Is there anything good to say about the graphics? I guess some of the interiors look nice, such as Dragonsreach. Overall, it looks like a game from 2006-2007, though. And I don't think "consoles" is a good reason to accept that. They could easily add variables to enable/disable specific shaders, and package the console versions with lower resolution textures and reduce the 3D model LOD level by 1 or 2 (If they even had an proper LOD system... will comment on that later). > Shadow mapping is implemented terribly. The shadows are blocky as we all know, and there aren't enough slices, so distant objects either don't cast shadows, or the blockiness becomes insane. Terrain also doesn't cast shadows. Why not? It looks terrible to be standing behind a huge mountain at sunset and see yourself and trees around you fully lit, even though you should be in the shadow of the mountain. > No implementation of modern graphics techniques. This is obvious, and there are some remedies for it, but nothing completely effective. For example, the particle and light systems look almost exactly like Oblivion. The falloff on light sources is incredibly unrealistic. Particles aren't affected by ambient light or light sources. Fog isn't affected by light sources. Grass isn't affected by ambient light or light sources. Most light sources don't cast shadows. There's no SSAO, HBAO, light propagation/reflected light, or any kind of global illumination attempt. There is no displacement for water, "foamy edges" for water, caustic seafloor textures, or nice underwater fog. Underwater looks almost the same as it did in Morrowind. And what's with the distant water? It's always a solid color, and you can often see the edge of the model, instead of it going all the way to the horizon. The subsurface scattering is a joke and looks terribly fake, Crysis 1 from 2007 had better SSS, as well as a lot of the other features I covered. I'm not forgetting FXAA, but that's hardly an improvement. MSAA looks better anyway. There are rarely "decal" objects to add unique texture detail. It would be easy to add a lot more single-polygon objects with alpha channels and a shader that projects their texture onto close objects in the direction of their normals. Then you could have some unique dirt texture decals in various places and not need to store every detail in the main texture. > The textures and models are horrible. This is obvious as well, as there are tons of texture mods already. All of the rocks and cliffs in the game use literally two textures. Their UV maps are terrible and their detail level ranges from incredibly detailed (and thus too noisy), to so low that they look like textures from Doom. The equipment textures are equally bad - look at the orcish armor for example. There are no advanced shaders to add texture detail either. They could have had a "detail texture" which would have a much higher tiling size and would become visible while getting close to a model. They could have also added DX10 tesselation displacement for the PC version. The models are obviously low-poly, and I don't think there's a proper LOD system. Models for weapons and armor, for example, only have a first and third person model. They're both at full detail until they fade out of the scene completely. To improve visuals, there could have been 3+ LOD levels, with the nearest ones being higher quality than the models currently in the game. If done correctly, this could even improve performance. > Covering up the lack of modern graphics techniques and lack of proper lighting model with screen shaders. This isn't as obvious, and I've mostly "fixed" it with one of my mods. There's bloom everywhere, and it's basically the same bloom from Oblivion. The eye adaptation is fake, and doesn't actually adjust the "exposure", it just makes the screen dark or light for a second if you look somewhere that's a lot darker. You can compare by using my new version of Realistic Lighting with the custom shader in ENB. It has real adaptation. There's a forced contrast increase in the game. This causes a "black crush" thing in dark textures, where detail is lost. I think the objective of this was to make the shadows look darker, but a better way to go about that is to actually lower the ambient color and increase the light brightness. There's also the unnatural "tint" over everything on exteriors that looks like a yellow photo filter, and saturation is very inconsistent. There's no shader for making lit areas be more saturated than dark areas (as it would be in reality). Nights and dungeons are way too bright, but this is more of a design decision, so I'll cover it in the art section. 2. Gameplay/Mechanics So much is stripped down in this area that it's ridiculous to me. Obviously there are some "changes", and some positive additions, but overall there's less depth to the gameplay. > Firstly, the compass and journal system feels identical to Oblivion. And that system is incredibly boring, because it leads you right to your destination. There's no thought required, and you actually -can't- play the game without this, because nobody gives you directions. You have to at least enable the map markers to be told where to go, or else there's no way to find it at all. Something in between would have been nice... The fast travel system is also similar. There's a huge world, but it's all for nothing because nobody (or most people?) is walking through it to go where they need to go. They're just fast travelling. I think part of the reason we don't want to walk is because... the world is boring! I'll address this in the world design section. The map sucks. Obviously the quality map with roads mod is an improvement, but it still looks horrible with polygons visible around lakes and other places. > Magic has about half or less of the spells from the previous games, and they're horribly balanced. Spellmaking is gone, and there's just a serious lack of spell effects. There was a lot more variety in previous games. Enchanting can make you cast for free, and the destruction perk can allow you to lock enemies in place every time you damage them. Mysticism is gone, and the other schools are mostly useless. What's useful in Alteration? Paralyze? I don't think the armor rating spells are useful because they add only a fraction of what you would get from regular armor. And none of the other ones even need to be mentioned. Illusion? "Calm" is useful, but if you put effort into leveling illusion, you will probably be weak in other areas, and then you'll be stuck using calm on enemies and not being able to kill them. Restoration is fine, I guess, but lacks a lot of spells like cure disease, cure poison, etc. I haven't really used conjuration, but it looks like there are less summons than before. > Combat is about the same as Oblivion... what's changed? You can bash while blocking now? Cool... I also personally can't stand being "locked" into actions... for example, running forward and power attacking makes the character continue running until the attack has finished. Combat seems to have auto-aim, and there's no locational hit detection. Finishing movies seem to happen randomly. The range of attack types is extremely limited. There are few animations, only one "combat style", and combat is slow. The animations look pretty bad and are jerky in third person. Weapons swing really slowly, and with evenly matched enemies, battles take a while even though you're constantly making hits. It feels like they've added some gimmicks to make players THINK they're doing something special in battles, but they're still just stat-based, not skill-based... which is fine, but lame gimmicks to cover it up are not. And it's also not fine when the game is badly unbalanced, which it is. > Archery uses auto-aim... and still doesn't have locational hit detection... > Arrows and other projectiles still stick in solid metal, and the amount they stick in an object isn't related to their velocity. A character can take 10 arrows through the eyes, mouth, and neck, and walk away like nothing happened. There's also no blood dripping out, but I guess that's more of a graphics complaint. > Phyiscs are still bad. Can't rotate items that you pick up. Can't "lock" items in in their place, so setting a table, for example, is almost impossible. Items are too light, their centers of gravity are too low, and their collision models are too big. Lots of physics bugs, etc... > Smithing and enchanting are too easy and unbalanced. You don't have to look for armor now, because you can create every good item in the game! Everything you can create at a high level is better than any artifact you'll ever find. > Speechcraft is boring now. No more ability to actually persuade shop owners to give you a better price. You just get it automatically. Persuasion for other NPCs happens automatically, you don't have to think of it yourself, and you can't even do it any time you want. > Armor/weapon degradation is gone. This would have been great in combination with smithing, but it's gone now and you have one less thing to worry about (and one less thing making the game more interesting). > Blade and blunt are grouped into single skill categories now. One less thing to worry about (and one less thing making the game more interesting). > Difficulty level fails is pretty much the same as Oblivion, which means it's just linear damage scaling that increases damage the player takes, and decreases the damage that enemies take. It's also not balanced with levels, which is pretty obvious by high level characters with enchanted/smithed items being able to win any battle easily on master difficulty, but low level (5-30?) characters will have a very difficult time with that. More about battles being boring in the NPCs section of "content". > No Acrobatics skill/jump height is locked > No Athletics skill/speed is locked > I'm sure I'm forgetting stuff... 3. Content: World/Level design, NPCs, items, etc Probably the worst part of the game. > World Design: It's okay, probably the best thing in this category. The terrain is more unique than Oblivion and there are a variety of regions, and obviously the world is huge with lots of places to explore. Unfortunately, some places feel pretty cliche. Like in Oblivion, there are about 10 tree models for the entire world, and you -will- recognize the same fallen log in several places. Since the models for the game are often only 100-200 kb, I think this is lazy. There is a serious lack of diversity in settlements. There are only 5 "human" architecture styles in the game: Solitude, Whiterun, Windhelm, Riften, Farm. Arguably Markarth, but since dwarven ruins look the same, I'm not including it. Each of the hold capitals have essentially the exact same things: A few of the most stereotypical store types ever (blacksmith, alchemist, general goods, etc.), a few houses, a temple, a cemetary/hall of the dead, and a Jarl's castle/house. There's a serious lack of buildings, with the capital of Skyrim having a total of about 15 different buildings. Considering the size of the game world, I think that's quite lame. Many of the other "hold capitals" have 10 or less. How are these hold capitals? They're basically tiny towns. Also, the amount of "towns" and rural settlements in the game is extremely low. With a world so huge and full of empty space, why aren't the cities larger, and why aren't there more settlements? I'm sort of blaming the building sizes. It was similar in Oblivion - Buildings are about 2-3 times the size that would be realistic, presumably to make third person camera views more comfortable. They didn't do this in Morrowind, and the game had decently sized cities and third person worked fine. At the least, they could've made interiors slightly larger than exteriors (maybe they did already?). I would expect the amount of buildings to increase with each game, not decrease. > Dungeons/level design: They are boring. Almost every dungeon goes like this: Walk through a series of caverns, killing enemies in each one, looting a few chests full of the most generic leveled items you can imagine and have seen 1000 times before, getting to a large final cavern with a slightly more powerful enemy, looting a chest with slightly more valuable leveled items, then find the super-mega-convenient secret passage that leads you right back to the exit! This dungeon style existed in Oblivion as well. Most dungeons are very linear, traps are easy to spot, and the puzzles take 5 seconds for anyone with an IQ above 80. > NPCs: The biggest disappointment of the game for me. I've found about 3 NPCs in the entire game which seem to have any character at all. I don't know if this is from the dialogue being voice acted everywhere, or if the dialogue writers are just shallow people? There's also a serious lack of diversity in the NPCs. I don't mean that there's a lack of Argonians or Khajiits, because that fits fine with the lore. I mean that there's a lack of named NPCs in general. I've met thousands of NPCs called "Bandit", hundreds of NPCs called "Guard", and many more who just have absolutely no character at all. There are hardly any named NPCs in comparison. A city often has more generic guards than it has citizens. I can only think of a few NPCs who travel on the roads who have a name: Talsgard the wanderer and the Khajiit caravans. Normal "city" NPCs never go out on the roads, they never visit anyone, and they always have the same greetings every day. It's almost exactly like oblivion, but with EVEN MORE generic NPCs. There's also a serious lack of variety in enemies that can be fought. Most of my encounters have either been with undead, Bandits, or animals. What happened to Daedra? What happened to powerful weirdos with strange names and unique locations and unique items? This brings me to... > Leveled content: The second biggest disappointment of the game for me. Aside from the hundreds of faceless, nameless, boring non-characters that are found in the game, there's an equal multitude of nameless, boring non-unique items to be found. How many times have you seen "Ring of alteration"? 100? 1000? Every time you fight a seriously hard battle, you will find the same crap in the chest. It's going to be the same armor you already have, rings with enchantments that are the same as yours or worse, and some random gold. Nothing interesting at all. Bandits and other enemies always carry the same stuff too. Every Bandit wears fur armor or hide armor and uses terrible weapons. I guess it goes with them all having the same name. This extends further than just loot: Every shopkeeper has the same crap. You can find the same ingots and weapons at every blacksmith, you can find the same potions and ingredients at every alchemist, and you can find the same magical and misc items at every mage and general goods store. You can easily predict that your level 5 character is never going to see Elven weapons at any store, no matter how hard it's looked for. On the other hand, you can predict that your level 20 character will see Elven weapons in every single store in the world, as if there was suddenly a trend which made these things the most popular item in Skyrim. The only unique items are either artifacts or quest items, and they're always still "leveled", so if you obtain them at level 10, you're going to find a random leveled weapon at level 20 which is more powerful than the famous Daedric artifact. This also extends to battles: Guards are always going to be an even match for your character. You can be level 10 and lose a battle with Whiterun guards. You can be level 30 and lose a bttle with Whiterun guards. You can be level 10 and Dragons are easy to kill. You can be level 40 and dragons are still easy to kill. You won't encounter bears in the wild before level 15 or so, but after that you will encounter them all the time. After a few days of playing the game, it becomes so incredibly obvious and unnatural, and all battles become so much of the same difficulty level, that it's boring to get into a conflict at all unless it's part of a quest. > Lack of unique items, lack of variety in non-unique items. This goes with the previous complaint, mostly. Every iron sword, every steel sword looks the same. There's no indication of an item being used, old, new, unique, or anything. There's no variety in weapon style between smiths. There are hardly even any items with names or unique enchantments, and it would be easy to add a variety of names, damage ratings, and enchantments to weapons but use the same model. At least there would be some unpredictability. 4. Storyline(s) - (Spoilers ahead) Another failing part of the game. The main storyline is okay, but every other one is pathetic. I never really have that much hope for storylines in games, but the guild storylines are seriously bad. The number of quests was extremely small for how large the world was and how many locations could have been used. "Radiant quests" are so boring and lacking in character that I don't think they count. I'm only referring to the scripted ones. The scripted ones also lack depth. Let's take the companions storyline for example. I started playing it, and on the first day I found out that the leader is a werewolf and he wants to cure himself. I thought: Oh, well, I guess I'll help him until we found out what the -real- overarching problem is. I finished the quests and realized that this pathetic thing WAS the entire "problem" of the companions storyline. Seriously? There was hardly any dialogue about it, I was informed of it near the very beginning of the questline, and there were absolutely no "plot twists" or unpredictable events. The dark brotherhood had one of the better quest lines, with a small plot twist, but it was still short and underwhelming. Especially because I found both black doors by myself before I even started the questline. None of the characters in any of the questlines have shared much background information, and when they have, it's been super generic, shallow, or doesn't make sense. Some examples: Tolfdir from the college of winterhold. When he talks to the character, he sounds like he doesn't know anything. He doesn't talk about anything "mystical" or anything that makes him sound like he has a higher understanding of magic or magical items than the player. Another example: the members of the dark brotherhood share about two lines related to their past. Babette, the child vampire, was an interesting character, but there was nothing in the storyline related to her, we didn't find out anything about her past other than how she became a vampire, and we didn't find out anything about her character. Even for more "main" characters, like Delphine, hardly anything is shown. We know she's a blade, and has been in hiding. Why? Why did she choose to be a blade? What kind of person is she? Should we trust her and the other guy (I forgot his name)? There's no way to seriously consider these options because there's nothing to be learned about the characters' background and personality. There's no life to the "story" of the blades. They're just some random people who want to stop the dragons for no apparent reasons. The same goes for the greybeards and just about everyone else. We don't learn a lot about their purpose, and we're done with them after one or two quests, and I personally feel like I don't know their characters at all (or that they have none) after completing the questlines. The characters of the game, in general, also seemed completely stupid and lacking in knowledge. I felt like almost nobody knew anything about the current events, history of the area, combat, magic, etc. If they did, they never shared that information. I think the only character that was decent was Paarthurnax, but he's still hard to believe at times. He's been around for thousands of years. Why doesn't he have the elder scroll himself? If he cares about defeating Alduin, and he know that the "return" was coming, why didn't he prepare for it better? His attitude made it seem like he cared about it, because he was extremely kind to the player. If he didn't care, why did he help the player at all? He would have been useless without the player. He doesn't even do anyhting to help during the storyline. Aside from the characters, we haven't really learned much. Why is the player dragonborn? How did the greybeards know that the player was dragonborn right away? Why didn't Alduin attack the player sooner if he knew? I'm sure he wasn't stupid enough to underestimate the player, or too weak to attack. Why did Shor let the player leave sovngarde so easily? Why weren't the dragon priests and dragon priest masks involved in the main quest? (It would have been more interesting). How did the blades know anything at the start? How did Delphine know where that horn thing was? Why wasn't that dungeon clear when the player went in there? Why didn't the Thalmor become more involved? They didn't seem to take notice of the dragons at all, and even after the blades invaded their Embassy, they didn't seem to care at all. I won't even comment on the civil war storylines, because there was a lot of potential there and they were completely pathetic. 5. Artistic vision/lore (this isn't really something I dislike, but I will address it anyway to be fair) Probably the only somewhat good thing about the game... I don't really have a lot to say about it, because I think it was mostly good. It was less cliche than Oblivion, and a lot of stuff was unique and interesting and awesomely inspired from norse mythology. But... it still could have been pushed a lot further. The only really bad thing, for me, was the design of the weapons and armor, which were often highly unrealistic and "high-tech" looking. Alright, that's it. I probably won't respond to this, and will probably be insulted by people who love the game, but I had to write it. Forgive any grammatical mistakes, I didn't "proofread" it.
-
I just hope you make the "rebalance" part a separate mod from the actual multiplayer, because I'd prefer if people could develop their own "rebalance" mods that are designed to be used with the co-op/pvp mod. Just make sure you provide the ability for each player to correctly perform all actions and interact with each other and the world, and then leave this as a starting point for yourself or others to make modular balance fixes. Not everybody wants the game to be balanced the same way. If it was "rebalanced" in a way that I disliked, for example, that would inhibit me from using the multiplayer mod at all. I personally like extremely competitive "balance" things, I'm not sure if I'd even mind it being "vanilla", because players would have to push themselves to think of ways to defend. Just because you haven't been able to do it in testing doesn't mean it's impossible. Example: I used to play Crysis online, and was probably one of the top 1% best players, and all of us who were really good noticed that Crytek -tried- to balance the game, and it was balanced for most players, but since our own skill level was way beyond theirs, we found that it wasn't very balanced for us. I'm not sure you can ever really make a completely balanced game, but every ability that a player can use should have a "counter" so that players have to adapt/react to each other. You also may not know what this is unless you've done extensive testing with the game, so trying to balance it before hundreds of people have played it is futile. I mean, the best strategy in "vanilla" could end up being something that you haven't even thought of yet.
-
I want to delete vertices from some armor meshes. I've tried it a few times already, and it crashes the game when I select the item. I've just been exporting the mesh as OBJ, deleting some of them, and the importing it again. Just moving the vertices works fine, but that's not really an option for removing parts. It's also not an option to use the alpha channel trick, because I want the meshes to be easily compatible with re-textures, and I don't want the filesize to be huge either. How can I do that?
-
Type "showracemenu" in the console.
-
Need some help making my armor mod standalone
747823 replied to gamergirl109's topic in Skyrim's Skyrim LE
Edit: Actually can you upload the ESP? -
Isn't SkyUI already open source?
-
So basically you're saying: We don't get the source code for the game! I don't think you know what you're talking about at all... They use the creation kit to "design" the game. There probably aren't any other "tools" other than minor 3D stuff like their in-house NIF export tool. The other stuff is done by programmers...
-
What kind of alternate starts would work for skyrim?
747823 replied to Barlas's topic in Skyrim's Skyrim LE
Arrive in Solitude as a prisoner on a boat, main quest starts the first time you go to Helgen, with character as a bystander instead of a prisoner there. Being forced to start the main quest is lame. I think I'll try this myself when the CK is released. -
Can you please rename this from "Overhaul" to something else? I'm really sick of seeing mods named "x overhaul", when they completely change something. The official defintion is: "Noun: A thorough examination of machinery or a system, with repairs or changes made if necessary." Hardly any of the changes from the mod are necessary, and they aren't simply "repairs". Something that fixes balance or fixes bugs or fixes other problems in the existing game is an overhaul. I would call this a "Redesign" because that's what it is. Aside from that it sounds good.
-
Did you replace the 1st person version? Replace both with the same ebony scimitar model. If you did then... I could try to do it myself and upload the files?
-
Female plate armor with or without breast cups.
747823 replied to Wolbryne's topic in Skyrim's Skyrim LE
Haha, thanks for this. I might link to the topic in my mod description... -
i'm having trouble with Blender and Nifscope meshes
747823 replied to eternalsoul2012's topic in Skyrim's Skyrim LE
Just copy an existing weapon and import your mesh over the original... -
The normal map filter is fine for small details - wood grain, fabric. Bigger ones are meant to be baked from a high-poly mesh. If you don't know how to do that, I'm guessing that you aren't modeling a new mesh... If you want to fake it for "plates" and things, you can draw a solid Heightmap and use the nvidia filter on that. Lighter areas will be "raised" by the filter. You can put dark lines with the pen tool to make seams. You can use gradients or blur to make more slope-like areas. Then you can use the filter on a material texture like wood/leather/metal and overlay it on the texture you just made.
-
SkyNet - Co-Op Gameplay (Theory and potential structure)
747823 replied to hipolipolopigus's topic in Skyrim's Skyrim LE
Haha, alright. I can't promise that I'll be active but if I think of more stuff I'll try to remember to post it. These are of course... just ideas for how things could work, and it's just mine and I'm not suggesting that they are the best or should be used. I hope I didn't make it sound too much like that. I know I'm using "will be" instead of "could be" but it doesn't mean anything. I wanted to clarify something about the "loading and saving" that I felt wasn't clear enough before. The world save will probably just be normal ES saves, but the world one used by the server has no player, This is the only save that is actually used by the game. The "character" saves are just used to store all of the statistical data for player characters, but the actual player characters are just instances of an actor which have been modified after being created and continues to be modified as the game progresses. You can think of it as... spawning 5 of the same actor in singleplayer and using console commands to change their stats, inventories, etc. The reasons I suggest making a new instance when a player connects, deleting it when a player leaves, and storing the data in a separate save are: > So the server dosn't need to do a full world save any time one player wants to save and leave the server. A full world save will affect everyone on the server like it affects the player singleplayer games, so it would be annoying to have this happen any time a player wants to save their character. Players can save and leave without needing a world save > So that the player instance isn't left in the world when the player leaves the server. Also allows the player to have multiple characters which can be switched between. I thought of something that could be problematic... If the server goes crashes with players in it, there will be no chance to delete the player instances and save the world. This means that when the server starts again, all player instances from the last save will still be in the world. Maybe there's a way to delete them all upon starting the server and save the world like that? Obviously exiting without crashing could do that, but doing it at startup is probably good too. About your other post... well yeah, My speculations are based mostly on knowledge of Oblivion. It looks like a lot of things are similar in this game. And like I said, I am only a novice programmer, so I think I'm only able to come up with... "outlines" of things like this. And I'm going to sleep. I'll split everything up and post in the mod forum when I wake up. :) -
SkyNet - Co-Op Gameplay (Theory and potential structure)
747823 replied to hipolipolopigus's topic in Skyrim's Skyrim LE
If you read this, you should prepare yourself for a wall of text. I skipped between parts a lot so hopefully there aren't any half-finished sentences or paragraphs. If there are, sorry. I'm a novice programmer, a 3D modeler, texture artist, 9-year TES player, have played thousands of hours of online games, have been at in the top 1% "skill level" of players in at least one game and top 20% in several. I think I have some useful ideas. Not that the experience matters, but now you know my perspective... take what you will from this. I mostly agree with anyone saying to keep gameplay extremely simple until you've got a fully working model, hopefully without too many bugs and with complete "basic features" that are necessary. I think you can come up with a list (I'll help by making an example one) of things that are necessary for game mechanics, which are required for more complicated things. You could even divide it into multiple levels. I think it's better to fully complete (or at least to a predictably working extent) each level before adding more. I'll split this into 4 levels for now. I'm just pulling these from my head and obviously they're not fixed. PCs = Player-controlled actors. (1) Most basic features to be synchronized, quite obvious: PC positions. PC rotation. PC actions (move input, attack input, etc.) PC animation states (attacking, moving, casting, dead, etc.) NPC actions NPC action states (2) PC stats: level, skills, skill progress, attributes, resistances, race, sex, perks, armor rating, etc. PC spell lists. PC inventories. NPC stats. NPC spell lists and inventories. NPC locations, rotation, actions. NPC states. (3) PC equipped items. PC face and body shape. PC quest states. NPC trade gold and inventory. Container contents. Outside item locations/physics. More on this below. Time of day. Weather. (4) Server-side saves. More on this below. (5) Any "extra" stuff such as synchronized dialogue and some features that I will mention below. And now some areas I want to talk about in more detail... --- Character creation, saves, etc: Assiociating characters with clients: One character per server. The save file should probably be saved in a specific folder for each user, and a database entry will be made somewhere which associates this directory, and thus character, with a "token" (I don't know if this is the right term, sorry if it's misused...). When a client joins, the client's token is checked against every one in the database, and if there's a match, the associated save is loaded, a new actor is added to the server and client game worlds, the stats are copied and the client is given control of it. It could be IP based obviously. The first time a client joins a server, the IP is associated with the save and the save is auto-loaded when that IP connects. If it doesn't exist yet, client is directed to character creation mode and the new IP is put into the database. Probably the easiest to code. It could be a client-side file containing a unique string saved in the skyrim user folder. When the client joins, it's checked automatically like the IP and the character is loaded. Client can use this on any computer and can create multiple characters, but it requires swapping of the file itself. It could be username/password based. A password and username is stored for every character, and the client enters this every time (but can save it to a file locally to remember what to send.) Then client can play any character they have the password to. Allows multiple character per client. Probably the best idea all-around. Seems easier to code than the client-side file and less likely to fail with an IP change, hard drive failure, etc. Joining/character creation: I'm assuming the last method I metioned for associating saves with clients. When the player starts multiplayer mode, the player has three options: Continue, start new character, cancel. Continue sends a check to the server containing the player's "token". In this case, the name and password. If they match and the match isn't "online", do the load procedure and mark it as online. If not, give a message and go back to the 3 options. If player selects new character, ask for a new name and password. Name is checked against other existing entries. If the name is unique, the game temporarily loads a singleplayer cell. The singleplayer character creation runs in an empty, exitless zone. Completing the character creation sends all of the character data to the server. It saves to a new directory associated with the previously entered username/password. When this is over, the singleplayer stuff is unloaded and the game receives the world data from the server and then cues the load process with the newly created save. More about my idea for a load process below. Saving: I think doing something like this would be good: User presses the singleplayer quicksave input to save, and the server replaces the user save. A new save file should be created automatically every x amount of time (day? hour?), but otherwise the current one is replaced when the user saves. Maybe delete saves that are more than a few days old to keep enough backups in case of problems, but not use excessive space. There need to be server-wide saves every x amount of time as well. The state of all non-PC entities needs to be saved separately from the character saves, which is not the case currently. There should probably be a warning 5 minutes and 1 minute before a server-wide save is occurring. It should also save all characters to their respective files at this time. The purpose of automatically doing this is to keep the state of the world if the server crashes or something else goes wrong. Should probably keep several saves at once too in case of corruption or some other issue. Loading: When a client joins, the client's token is checked against every one in the database, and if there's a match, the associated save is read by the server, a new actor is added to the and client game worlds, and then all data is copied from the save to the new player actor instance and the client is given control of it. If a save is corrupt or otherwise fails to load, server checks previous saves from the same user and loads them instead if possible. Notifies player with a message about what happened. The actor instance is disabled and marked for garbage collection when the client leaves. The active username thing is marked as offline. I think this is how it has to work, because you can't make a new actor for every character in real-time. I'm not completely sure but it will probably work better to just create a new instance of the same actor for every PC, and set everything on the client's instance to be the same as what's in the save file that this client asks for. I'm sure you could figure all of this out yourself, since you obviously have more programming experience than me, but maybe it was useful to read from someone else's perspective anyway. --- Communication: It seems really easy to add a small chat feature to the console. You type "say <message here>" and all players can hear it. Also add things like "chat 1/0" to mute chat, and "tell <playername> <message>". Every time you enter one of these, the server receives it and sends the string to the respective players, and their client prints it in the console. Not necessary, and a low priority of course, but it seems easy enough to implement and would be useful. I don't think there's a need for a custom chat window, but it might be nice if it's not too much work so chat can be read while doing other actions. The console would work fine though. --- Position/heading/movement: Make this client side! It absolutely sucks to have a game where you press an input, wait for the server to register the input, calculate your new position/vector/action/whatever on the server, and then send it back to you and have your client do it. It's also tons of work for the server. Every game I've played that's any good has it. I'll present a comparison of examples for either way. (A) Client side movement Good things: Player's movement feels smooth to himself, even in the presence of lag or overloaded server. Bad things: Player may see other players move unexpectedly if there's lag (B) Server side movement The good/bad seem to be the exact opposite of the other situation. I think everyone will prefer smoothness of their own movements over accuracy of others' positions. I also have ideas for NPC movement and actions: NPC position of the client who is closest to that NPC is propagated to all clients when position is updated. All clients send their positions for all loaded NPCs to the server, and the server compares how close each player is to each NPC, and sends back all positions from the closest clients. The client adjusts only within a certain theshold (25 game units? something like that - doesn't adjust if something is already very close to the received position, which it should usually be, but may not be). It should probably be this way for the "action" state of each NPC as well. I.e. uses data of PC nearest to NPC for whether this NPC is in combat, with whom, etc. I think this would be great for things like... two players fighting separate NPCs in the same cell. Then players engaging a close NPC with an action will not see that NPC move/behave unpredictably. The PC whose updates are used could also be locked every <some amount of time>, to avoid weird switching in case two players are constantly switching between being the closest to the NPC. And the PC whose updates are used could be always locked if more than one PC is within <some close distance> of the NPC. --- NPC dialogue, dialogue for quests states, trading, etc: I have a few ideas for this. None of them involve all players hearing/seeing the same dialogue at the same time because it seems like too difficult of a goal to think about yet. Many modern games with online play don't even have that feature. (1)Only allow one player to have a dialogue interaction with an NPC at a time. I think it's mostly unnecessary if the players are actually Co-opping Update all quest stages and rewards for all players (in the same party party?) if one player iteracts with an NPC. Advantages: probably easier to code and runs faster Disadvantages: (2)Allow players to interact with the same NPC and the same time, but don't synchronize dialogue or quest-related stuff, and don't show it to other players. Only synchronize an NPC's trade inventory and trade gold, but only and always when a transaction takes place. (3)Same as 2 but NPC inventories are 100% client side. --- Leveled NPC and loot generation, spawning, etc: If a party exists in a cell, this should probably take the party count into consideration. This could probably be done by a selected client (wheover has the lowest ping?). I can come up with a quick thing that would work pretty well a: average level of players in the party n: number of players in the party l: level of enemies to generate l = roundingfunction( a + a * 0.1 * n ) I have no idea if this would be balanced or not but it's just an example. The idea is to increase the level of t For FFA, pick a new random number in the range between the two players' levels for every spawn. If there are multiple parties in the same cell, or a party and Respawn rate should change dynamically with the number of players on the server. I think respawn rates should increase from the default to default times the number of players in the server. This should also have a cap of course if there will be a possibility of more than 8-10 players, because it would be quite dumb to have stuff respawn 2 minutes after you clear a dungeon. --- Hit detection: Make this client side! The client is going to have the other PC and NPC locations, stats, etc. for the moment... calculate things here, not on the server. I know there are drawbacks to this, but I think they are less. I'll give two examples. (A) Client side hit detection Client calculates a hit based on its own stats and positions of the other characters, and sends them to the server as hits, and the server sends them to other players/NPCs. A cue for the attacking animation and an update on position, rotation, etc. should probably be sent out at this time as well. The problems with this are: possibility to see players hitting someone from weird looking positions, better reflexes needed for blocking in PVP combat... (B) Server side hit detection Player attack inputs are received by the server, and whether they are hits and their damage and other stuff is calculated by the server. The problems with this are... players seeing their weapon make make a hit on their client but not actually doing anything because on the server that wasn't a hit. Extremely frustrating, as I'm sure anyone who has ever played an online game with PVP combat knows... As well as it being extra work for the server. --- Physics: Mostly client-side... Again, I know this causes discrepencies between server and clients, but the physics are not important. The only part they serve in the gameplay is in And I think this is going to be a waste of resources, is probably going to be complicated to write the code for, and would cause potential weird and unpredictable visuals for clients. I'm sure there's a way to kill the physics simulation... have the server receive an input when a physics simulation starts on any client, send this to each other client, and run it on the server at the same time. Set a timer at the beginning for a max simulation length, and when it ends, start checking for the object being slow enough to count as stopped and close enough to a static surface facing upwards to count as stopped. As soon as the object meets these checks, send the position calculated on the server to all clients. There will probably be cases where this causes objects to move unpredictably, but at least it will only happen once instead of constantly during the simulation, and will make the most important part of the simulation work properly: The final resting place of a physicalized object will be the same for all players. Alternatively, you could do what I suggested for the NPC positioning. Skip the server-side simulation completely, and take the "final location" from the nearest PC to that object for the current simulation and propagate it to all of the clients. This should probably have better performance, but I don't know if it will function better than the previous. Also, I don't know how arrow hit detection works, but I think it definitely needs to be from the client who shot the arrow. See bows in Minecraft multiplayer for example of why. They are nearly useless. This might be different in 1.0 though, I haven't played the game in a while. --- Sleeping: Bed becomes a player's spawn location after dying, and heals a player but doesn't advance time. A player can clear their spawn location from a menu or with a console command. --- Fast travel: Doesn't advance time. Several ideas for balance... Can use fast travel only once per in-game day. Can use fast travel only after x real life minutes. Party members receive a fast travel invite for the same location when one member fast travels. Ignores the fast travel cooldown. --- Competitive game objectives: This is only a potential idea and should be low priority if you even like the idea. It's "inspired" by the Minecraft factions multiplayer mod, and I think it would be quite fun and easy to implement. Would also create more interesting dynamics between players that extend far beyond... 3 players enter a dungeon togther, kill stuff, and then move to the next one. It is sort of an "addition" which is unrelated to the mechanics but would give a PVP focus and also give a purpose to play for a long time. Now players can take control of holds and there can be player-player politics that are much more dynamic and interesting than the in-game ones. I also think my system is rather easy to implement and doesn't require any huge changes to the game or huge performance decreases. There is no visual representation. Save a "power" stat for every player in each hold. The idea is essentially that a player or group of players can take control of holds. The power level could be a value between 100 and -100 that is 0 by default. The power stat could also be party-wide or faction-wide (if factions existed) for shared control. What having power does for a player in a hold: > Players deal more damage and take less damage. Every 25 positive points could add a 5% increase to all of a player's skills and attributes, and every 25 negative points could incur a 5% decrease to them while in that hold. These could be spell effects that calculated and added to a player upon entering cells from a certain hold. This would probably require an ESP that gives a way of marking cells as part of a certian hold, unless that already exists. I don't know if it does. > Friendly NPCs have a higher chance of fighting on the side of a player with more power should a battle happen near NPCs. 0 or less power = 0 chance, 100 = 100% chance. This gives the defenders a greater advantage when defending at key locations such as cities, because they will have the protection of the citizens of the hold. > Players with negative power in a hold can't open containers in hold. This gives others incentive to defend a hold - they can store their items here when they leave the server or Gaining/losing power: When a player or party wins a fight against any player or NPC in that hold, his/her (or the party members') power level for that hold goes up. Victories over NPCs in that hold could increase the power level by 0.25, victories over players could increase it by 5, and death could reduce it by 10 (this has to be offset because of how many NPCs the player can kill easily). Power gradually goes back to 0 over time. Maybe... 10 points per real life hour? Attacking or defending a hold: Players should probably all have a custom ability that shows the location of all other players in the current hold as "quest markers". Lasts for 20-30 seconds and has a 3-5 minute cooldown. Maybe only available if power is above -50 or something, would have to test balance. --- Overall thoughts: Do not redesign the game! ...and make as many features client-side as you can to save resources and make it feel smoother. It also makes the gameplay a lot smoother if the connection is slow. And don't force a player's position or actions on his own client... The only drawback that I can think of with this is that it opens a bigger window for cheating. I don't think cheat protection should be a priority, as some measures could be a huge performance sacrifice and I presume it's not going to be a competitive experience for most players. I would also expect most servers to be privately hosted for a group of players who all know each other, and there would be no reason to cheat in that case. Also I really hope you change the project name... I just think it sounds stupid and is confusing. Why not just Skyrim Co-op Project? But the name doesn't really matter, I guess. Was going to post this on your mod forum but there was a 10,000 character post limit. -
Oh. I didn't understand how it worked, but now I do, that's quite easy. Thanks.
-
Well, I've gotten several new weapon models into the game now, does anyone know how to get the blood textures to use the new mesh instead of the one from the original weapon I copied? Neo: You can't make stuff transparent with the alpha channel anyway on the shader for weapons and armor.