#ue4-general
1 messages ยท Page 37 of 1
well for some things it is convinient to be on the C++ version if I am doing C++ such as on SuggestProjectileVelocity
on the blueprint version https://docs.unrealengine.com/latest/INT/BlueprintAPI/Game/Components/ProjectileMovement/SuggestProjectileVelocity/index.html
SuggestProjectileVelocity
It says Trace Option is an enum but doesn't say what the enum can be
on the C++ version
https://docs.unrealengine.com/latest/INT/API/Runtime/Engine/Kismet/UGameplayStatics/SuggestProjectileVelocity/index.html
Based on analytic solution to ballistic angle of launch http://en.wikipedia.org/wiki/Trajectory_of_a_projectile#Angle_required_to_hit_coordinate_.28x.2Cy.29.
I can click through and see what the choices are
well, its not really a problem with the docs, its just me trying to shortcut my way to the C++ versions that don't show up high on the search
so its really a personal problem
Ah, the API docs
well, the issue with that is that 95% of those docs are auto generated and not hand made
And no one really uses it because of that
So not enough people complain about things like that
It really doesn't make sense that the blueprint api docs have links that do nothing
I'm pretty sure this is publicly accessible now
Defintiely the best place to report
@hollow dune What were the assets you moved?
Well I guess it might have been too long pathways for the cooking to finish
@plush yew I removed everything, still wouldn't compile, I added all the content to a fresh project, it works
something was wrong with that project file specifically
sometimes projects can get corrupted like that, good thing you got it solved though
@plush yew I'd actually like crosslinking between bp and cpp api
I've suggested that a long time ago too
Usually it is the other way around and how Allar said
BPs have almost always some description unless it is a enum or struct
Where cpp api is mostly generated and not useful for anything else but browsing the functions and class hierarchy
Almost every time I open cpp api page for a function it's like this "DoThis() - Does this"
Most descriptions are something you can figure out from function name already, so they are pretty much pointless
Hey, I have a question: Can I change the color of text in the output log?
Not all the text. Just specific things that I put there?
...and with blueprints?
@hybrid scroll Expand the Print node. there's a color option there
really dumb question but for some reason my viewport resolution has gone way down, its super pixelated, I've tried a bunch of setting but it still stays pixely, is there a way to fix this?
swcreen percentage probably
*screen percentage
try opening the console and typing r.screenpercentage 100
thanks! that worked! ๐
anybody know when 4.13 is gonna be fixed so videos when imported are actual videos?
Come again?
http://i.imgur.com/MC75ADe.png when i import a video file in 4.13 right now i get this, but its not a video file you cant do anything with it
no idea. i should probly look for them
Describes how to use the File Media asset to play videos inside a level.
seems you can't just import them now. you have to reference them
@distant needle Lol. when was this added? Anyway, this doesn't work with output log, just on screen. And is per string, not per character, so not exactly what I was hoping for. But thx.
@hybrid scroll warnings are yellow, errors are red
ok I think I know
setting messages as warnings or errors colors them
plus you can explicitly set a color
but that's available through C++
Alrighty, I'm trying to stream levels, but wondering if a sublevel can have its own sublevels.
what did you find?
okok nice you got it solved ๐
{
Super::BeginPlay();
bLevelsLoaded = false;
LoadSubMaps();
}
void AOrbiverseLevelScriptActor::LoadSubMaps()
{
NumberOfMaps = GetWorld()->StreamingLevels.Num();
for(ULevelStreaming* LevelStreaming : GetWorld()->StreamingLevels)
{
LevelStreaming->bShouldBeLoaded = true;
LevelStreaming->bShouldBeVisible = true;
}
}
void AOrbiverseLevelScriptActor::Tick(float DeltaSeconds)
{
Super::Tick(DeltaSeconds);
if (!bLevelsLoaded)
{
LoadedMaps = 0;
for (ULevelStreaming* LevelStreaming : GetWorld()->StreamingLevels)
if(LevelStreaming->IsLevelVisible())
LoadedMaps++;
if (LoadedMaps == NumberOfMaps)
bLevelsLoaded = true;
}
else
{
AOrbiverseLevelScriptActor::FinishedLoading();
SetActorTickEnabled(false);
}
}```
thought that'd auto resize
but w/e
Hi guys!! From Spain! Working hard in 3D Modelling and Cinematic videos!
Got some vids? ๐
just need to send a progress number to a sublevel
aha you need to pass a value to another unloaded level, why not pass it when loading that level?
nah, I have a base level, which has litterally nothing in it
and then spawn in my loading screen
then that has a percentage that updates off how many sublevels are loaded
yeah should still be universal
awesome
Wait
no gamestate, I always get those confused
not gameinstance
save it it gamestate, better for universal values
kk ๐
sry for being so sloppy in my help right now, been awake for too long, had a long day
xD
How do I package additional non standard files with UE ? I get this error in logcat on android D/UE4 (27835): [2016.09.19-06.52.24:901][-9146460]LogDataBase:Error: SQLite: Unable to add database '../../../Settlements/Content/Databases/ML_DB.db', it is not valid (problems opening it)!
but my packaging settings are as follows...
It just doesnt seem to pack my .db file
I've tried all the options individually and together
Yeah brother
Not sure what it is yet, tried packaging to Windows to see if it elobarotes why it doesn't find the .db valid?
Ill give it a try, it seems to me its a packong issue though but illsee
ok well before that
try checking if the sqlite3 header file is not included somehere it should be included like the sqlitedatabase header
Would it not throw a syntax errror instead of an exception if that was the case?
Yeah your right, atleast when building the project it would
Im right for once. Brb getting the wife to take a pic of me in front of the monitor
๐
Im sick of ui only now haha i just want to make something with more but i need toget these 2 out of the door first
@tiny prawn
We need your help ๐
Do you see any reason why he couldn't include the .db he is triyng to include?
@plush yew for hero moderator
I'm going to try a build without a .pak, maybe the .pak ends up destroying the structure
nope
Hey people. If I want feedback for my games trailer, is this a good place to ask, or is this channel only for development problems?
ok, thanks!
Anyone tried to make a moddable game with UE4 ?
not yet
I've made sure my game can ba modded, now I'm taking a look at the actual workflow for modders, and it looks bad
have an idea how to set it up but I was kind of hoping there would be a standard way
Basically the Epic-recommended way appears to be "ship the editor version of your game"
And then the modders can use the session frontend to launch a plugin build on top of your release
It produces a nice .pak file that works like a patch, which is cool for Steam etc
But I'm not very happy with having to distribute the game + editor + uncooked assets, basically anyone can rebuild the game as-is
(On top of being a pain)
yeah im not into that idea although I did love getting UE3 games that came with an editor, like Ravenshield.
@cloud cobalt aye looking at how ARK is modded, it's kind of... iffy
I've revived the thread here : https://forums.unrealengine.com/showthread.php?75811-Making-your-game-moddable/page2
It sounds as though we need to modify the engine in order to have any mod tools for our game. Is there any tool or plugin the the making that would make this easier?
"We're currently discussing next steps in regards to mods in UE4, process for shipping cooked vs. uncooked content, as well as making editor distribution a bit more straight forward" - Chance in May 2016
cool it should only take a couple of years then ๐
Yeah :/
Oh nice. maybe its ready when our game is also ready. We also want to ship a Editor with it. But we also want it only to be a level editor.
I doubt it's coming anytime soon, modding looks very low priority for Epic
What they actually did this year is DLC support
Which is fine, mods work like DLC, but I can't shake the feeling that they don't really care about it
Yep. i mean i'm fine with the current options. But its still UE4 with nearly all features when you just want to do a custom map.
and then getting that into the game itself. Sure that Modders will accomplish that. But i don't see newcomers that want to try out modding for the first time to get warm with that
I for myself started getting into modding and Developing trough Hammer Editor
@regal mulch thanks mate, check up a little bit, the first picture is mine along with the issues
when tim sweeney criticsed sony for their modding decisions a week or two ago, someone actually did bring up the terms for redistributing the UE4 editor
No idea why. But i always confuse Tim Sweeney with John Carmack
shame on me
But Sweeney's twitter Avatar is... HD
@hollow dune Hm, that's not easy. Does it package for Windows?
I'll give it a check now, I was told it was a single add this directory to the copy list but it doesnt work, ill try x64 now
Just to make sure if it's a packaging or an Android thing
Cause i can't really help with android
Hmpf
only thing I've seen, I'm unsure if it's what I want
even here again, states to do what I've tried
I have some sqlite db files put in 'content/datatable' directory, these files work fine on windows but not on andriod, maybe the db files were not packaged in apk or the obb file ? what should I do ?
@regal mulch thank you anyway matey
Sure
How many people mod Ark and how many active players does the game have ?
- No idea and second https://steamspy.com/
I think before worrying about modding one needs to worry about game becoming a huge success with large number of active users. Even then most players will only mess with modifying skins and stuff like that.
For our game. we want to enable modding as soon as possible. even if we don't have a big playerbase
Up to you of course, but from experience I am saying you'll spend dev time and resources implementing modding and that most likely won't pay off
I think it vastly depends on your game.
In our case, adding decent modding support took us only hours because of how the game works
So even if only 5 people try to add mods, it's not like anyone's time was wasted
We just want to get a Level Editor out for Modders. So they can do custom maps.
Just posted my latest video for Evil Horizon in #work-in-progress
depending on what type of game it is, modding definitely pays off
@grand python you can probably fork UE and cut ouf the parts you don't want
i implemented steam workshop support in our source engine title and it's immensely popular
nice. What is it called?
"how"?
insurgency
OH
any 3d artist or 2d artist in here looking to work with a team?
i'm a first purchaser. And i also played the original mod
i also started a Map for the original mod back in the days
never finished it...
@shadow hawk take a look at #career-chat
is Jobs for just paid work or all?
I believe it's for everyone
Okay thanks!
Maybe check with @ashen brook
I started game dev through modding (CS, then CSS/HLยฒ, then UT3)
Having mod support in my game feels right ๐
Mod support is nearly always a good thing.
did stuff for Quake 3, UT99, WC3, CSS, UT2004, Cube2, UT3, GMOD.... and they all benefit from mod support
Most of the time i just enjoy the amount of custom maps that come out.
Its just another headache for Devs lol but as a player its just another thing your game offers even if they never use it
I always wanted to make a hack game mode, where if the game detects a hacker there not banned there put in lobbies with only other hackers LMAO!
Hackers playing hackers can lead to them quitting there hacking ways lol or quit the game.
in general, mod support usually outweighs time and resources that had to be spend creating it. it increases the games lifespan, draws in potential new customers and has several other benefits, maybe it spawns another DayZ type of mod that popularizes the entire franchise. Even if you as a dev think your game is too complex for mod support (I'm looking at your Red Faction Guerilla and Battlefield 3!) people are smart, and modders can figure stuff out on their own.
i just say: Battlefield 2: Pirates Mod
see how many great franchises UT2004 and HL2 spawned... Red Orchestra, Killing Floor, Insurgency just to name a few
@shadow hawk #career-chat is for all work ๐
@grand python How do you plan to have the modding? To extend the editor to some extent, to the players?
No idea right now. Main priority is the game it self right now
But i guess since we mainly want it just for custom maps. Like Squad/ARK and VR Funhouse did it
Ok well if it comes to the point and you want to add modding, then extending the editor will require epics permission, as it would otherwise be illegal, so you need to do it in conjunction with Epic Games
@blissful reef If epic hasn't changed their policy that is
Sure
But not extend it to players for usage like in ARK
it's the redistribution part that requires permission and to be distributed via our launcher if i recall
Yes exactly, that is what I was talking about ๐
Just don't want @grand python to dig their team into a legal ditch so better to infrom way ahead of time then that they do it without knowing the policy
๐
I'm aware of that but thanks
@blissful reef is there an official modding guide from Epic ? There is an Epic-authored modding guide on the wiki, but it only covers the purely technical aspects of it.
No mention of how the editor would actually be distributed to modders
you'd talk to someone on the marketplace team and get slotted in the modding section like Ark
Preferable would be (if the game is on steam) trough the "Tools" tab in steam. Otherwise like ARK and Squad did it via the Epic games launcher
@blissful reef So basically you need Epic's permission to have mod support in your game ?
yes / no, depending on how it's structured
If you need to redistribute a modified editor, yes.
if you just require a specific editor version, and have some plugins you provide, through some other means, but works on vanilla release, nope
Okay, that makes sense.
The license does not say 'you need our permission', i believe the actual text says, you must only redistribute modified editor / engine code to other licensees
the launcher happens to be a good way to do that
all of this information is not provided by a an epic lawyer, im not your lawyer, read the license...etc...etc...etc
Non editor mod tools = No permission,
Extending editor as mod tools = Permission
@blissful reef So if you only need vanilla Unreal, you're only supposed to tell modders to get UE, then open a project you provide
yup
correct, they still need to get it via the launcher, sign up...etc
Last question, if I may abuse your patience : in this setup, you have to provide everyone with your source assets, correct ?
Assets won't be read-only like they were in UT3 for example ?
dunno
I don't know your game so i can't help you :P But in general. Custom maps are always a possibility
skins. and retextures
up to complete conversions
The game side is done for us, to be clear. Mods could already add any content, replace materials, etc. The big unknown is the process modders will have to follow.
It's more a question of how to get the tools to the modder than a technical issue n the game
oh. yea
For example, we don't know if it's possible to generate a DLC with an arbitrary part of the contents
Unless you have the release artifacts from the latest build
We don't know if builds can be compatible with newest releases, assuming contents stay compatible
Basically we feel like no guidance is available on the process & release front
Ah i see
That's stuff we also have to go trough (if we add modding). So its also relevant to us. @cerulean sequoia
No when releasing you will most likely be using the same version of unreal, won't be able to upgrade smoothly
why did you tag me?
hahaha
API vhanges could differ massivly and that could need alot of manual reworking for it to work
I'm not even talking about engine updates, @plush yew .
Didn't know you're reading right now.
More like I release version A, someone does ModA, can modA work on my newest version B of the game ?
Assuming B changes the copyright notice only
It's the modders job to update thier mods
^
you just have to provide updated modding tools then
Yeah, sure, but this is the sort of stuff I'd like to know
sure. stuff like that happens but cou cant really do anything against it
Unless you restrict what can be modded.
What ? i'm just trying to understand what would happen
I don't want to restrict anything
I want to know if I can provide modders with a decent path to mods
And what that path is
Hm... I only can think of shipping the UE4 editor with your game. then modders would have to look up everything on thier own
You can't do that.
Yeah if you release through Epic Launcher after being approved by Epic sales team
Like the 1 previous title that did it
you can't ship the editor with the game
^
either you release a plugin that works with the default editor, or you talk with the marketplace team to get your mod kit in the launcher
via the launcher ( mods tab )
or you give them the uproject :P
Thats basically the same as the modding kit in the epic games launcher
If you're shipping and Steam or other, according to @blissful reef the process is to distribute your .uproject and all sources, contents along with it. Then people get Visual, build the game & editor, do mods.
Q : Do modder require the release artifacts as well (stuff in /release/ folder) to be able to build a DLC ?
Q : Can this SDK still work if for example you add new content, unrelated to mods ? Or do modders always need the latest version ?
Q : Do game updates (say a minor texture tweak) break previous mods ?
wait. dont you want to do mods as a .pak or something?
Ark doesn't use the Editor tab, they only have their game their but clicking the downlaod modding tools button only redirects you to instructions on how to install the modding tools, but it's great for exposure of the game
care to explain?
I do want mods to be a patch-like .pak file, as explained by the wiki here : https://wiki.unrealengine.com/Modding:_Adding_mod-support_to_your_Unreal_Engine_4_project
But this process requires the release artifacts from the latest published release
My first question is : do I have to provide this artifact or can DLC be built without it ?
It's really a question of what do modders need to be able to create mods
AFAIK the session profiles are user-specific and can't be distributed easily, for example
they are not stored in the project yes, but instead in appdata I think
yeah it sure isn't properly streamlined and requires unnecessary steps that shouldn't be there, session profiles and all that
Another issue is that I can't redistribute some of my contents (marketplace assets)
So I would have to exclude them from the SDK
But then the DLC build would detect the discrepancy between the asset registry and contents
I would really love an option for cooking mods via the content browser, maybe you have to create a new folder for your mod stuff and you put all your custom content in there, then rightclick the base folder and click on something like "cook mod" and it does all the rest for you
yeah we would need a proper asset manifest that would work without marketplace assets
Going to write a thorough thread on forums to ask all of this
you should be able to mark a folder as "do not include in manifest" or something
I would love if you pm me the link to it once you wrote it :)
Send the link to the thread when you're done. Wanna see the outcome
You wouldn't give them your source, just to be clear
unless you want them duplicating your game ๐
Hello,
After years of work, my game is nearing completion, and we've started taking a closer look at modding. Our title supports it on the technical side - we can detect and use mod content, assets can be replaced, etc. The game-specific part is all but done. The releasing and process issues appear to be much more complicated that anticipated, though. After much discussion on UnrealSlackers and this forum, some questions are still up in the air. Let's get to it :)
My game has a
@blissful reef I already did ๐
But I fail to see how else I can separate the game from the editor
I am almost certain no one will mod your indie game (at least in the quantifiable numbers) unless your game gets as big as a handful of indie hits out there (Minecraft?!)
It's not like we care how many people do it. People have been asking for it, we like it, it's trivially done in the game itself.
"no one" is a concept that doesn't exist in modding, there is always at least one who will try. There are freaking mods for obscure games that don't even have a modkit.
also comparing anything to minecraft is dumb, minecraft sold better than a lot of AAA games
I am simply pointing obvious out.. Indies have limited resources to make and maintain a game (and by indies I don't mean ex-AAA with large savings, connections and potential to ace Kickstarter)
if you put more effort making a better game, users will be more grateful. If you spend time making game modable, instead of making a better game, there is a good chance 3 people will be extremely happy, while potentially large userbase will be unhappy with the game itself, which will lead to a shorter lifespan and less monetary returns
again, talking from personal experience of lone developer
We didn't spend any time on modding. Like I said, the game is moddable by design.
Like I said earlier, it depends on your game.
our game is build in a way that modding is basically just a click away, if the game is already supporting it, why not enable it?
UE4 isn't Quake... Quake was easy to mod. Nothing crazy about making sure users can access game data, package and distribute mods. UE4 is totally opposite. So, aren't you going to spend time figuring out how to make modding accessible ? It has nothing to do with your game moddable by design. It's about Engine not being modding friendly.
If UE4 was mod-friendly, I wouldn't even chime in ๐
UE4 does have a modding pipeline, the difficulties seem to be licensing-related
Basically the "can't redistribute editor" thing
The only technical issue I outlined in my post is how DLC build will react to deleted content
Which is also a licensing issue
is there a clear and comprehensive docs about enabling UE4 game modding (and whatever needs to be accounted for when making UE4 game with modding in mind) ?
I recall asking about how to make sure released game and work with DLC and how to author DLC post-release, but I don't believe I ever got any response.
Making a game with modding in mind has litte to do with Unreal, but we did it by using DataAssets extensively
So that any mod can override gameplay properties or add new content
Basically don't hardcode stuff in your code/Blueprint, use assets or external files to store data
Make the game modular so that one BP file can replace another
UT3 had extensive mod-specific logic in the code, for example
Every gameplay property was checked against 'mutators' objects
for example, in idTech based games, content is replaceable by simply providing pak file with higher number that the paks in original game. Let's say Doom 3 had assets007.pk4 as last number pak. If I make a replacement model for player and package it into assets008.pk4 (assuming folder structure and assets naming is identical inside virtual file system), player's model will automatically be replaced on load. How would that work in UE4 ?
Nowadays people don't give a damn about code. What they are more inclined to mod is visuals (skins, models, add new models/textures) and make new maps (using existing assets or mix of existing and new assets).
I recall none of these scenarios is documented officially
also there is a good chance one has to modify engine to allow such modding capacity
plz correct me if I am wrong
Well my project is a space sim, which isn't a shooter, but I believe solutions would be similar
I'm pretty sure you can change a model in the editor and generate a patch that replaces the head in the base game
Or you can have a data asset like me, and at game start, list all PlayerHeadAssets so that the player can pick
Or you can iterate all blueprints with a name starting with PlayerHead
Just because the solution isn't a simple low-level file change doesn't mean it bad
And no, you don't need to modify the engine at all for this
The troubles lie with licensing, redistribution of content
btw I do give a damn about code, see my game's sources on Github ๐
well, it is bad if it's not obvious solution
nowadays it's all about convenience for users
if a users has to jump through hoops to get his/her model or textures into your game, it's not good
same goes for mapping
if a person can't launch editor and simply start mapping using your game's content, then it's a fail
I agree about the mapping part, but like I said it's not a technical issue with the engine
so you are saying it's that easy to make maps for UE4-based games?
(assuming user signs up with Epic and gets Editor through launcher)
it is easy
Assuming the developer provided the environment
Which is the root of my questions
what do you mean by "environment" in this case?
In an ideal world, developers would be allowed to redistribute builds of UE4 editor
= what you are using right now (level editor, content browser etc)
UT3 did this, you just needed to start the editor executable, Steam even offered it at launch
When I say allowed, I'm really talking about legal fine print, not technical issues
You are not allowed to do it, so apparently you need to distribute your working directory (uproject file, sources, contents, config, etc)
Then people get UE, browse for your project, open it, and they have the same tools you do
Then they can generate a .pak file with all their modifications and release it
If you don't have marketplace assets or C++ source, that's it, nothing more
It's not complicated
If you do, see my forum post
well, but then users will have access to your BPs
sounds like a mess
what about replacing models, sounds, textures in UE4-based game ?
they don't really need your project
let's say you provide Content folder layout, specs and filenames for your assets you willing to allow to be replaceable
I assume end-user can sign in with Epic, get Ue4, create project with said Content folder layout, make a replacement model/sound/texture and author it into .ueasset
what's next ? how to actually package such mod, distribute it and how to use it with your game to see replacement in-game ?
how to make sure it can work with Steam Workshop ?
like I said earlier, idSoftware nailed it. It was extremely easy to distribute and use content mods (actually any mods) for Quake 1/2/3 and Doom 3
all that was required was downloading mod and dropping it into game's folder
Are you sure you did modding with Unreal before ?
End user just needs to put MyMod.pak into GameDir/Mods
That's it
Steam Workshop does just that
for more elaborate mods (new content), mod content was placed into subfolder with distinct name and txt file (description.txt as I recall) containing mod's name. Engine would "see" that txt file, read mod's name from it and create menu item in the Mods menu. Bam!, that simple.
I never worked with UE until UE4
I am from opposite camp - idTech modder ๐
hmm.. sounds easy. Was it in UE3 only or is it how UE4 does it too ?
UE3/UE4 provide a technical infrastructure to easily add or modify content, be it game logic, textures, models, behaviour trees, sound...
Some work is needed on it, as per my forum post about it
But I fail to see how you couldn't do the same thing
You can even hotload mods, apparently
so, is there comprehensive documentation about all that? tutorials ? (for devs - how to list mods in the game's Mod menu and load them; for end-users - how to author content mods for UE4 games)
it doesn't works like that
There is a tutorial on how to generate DLC, you have to work from there
Listing stuff in your menus is highly game-specific
Mod authoring is even more game-specific
It can't possibly be ge,eric
It can't possibly be ge,eric
How can menus be generic ? You are doing the menus in your game, not Epic
How can menus be generic ? You are doing the menus in your game, not Epic
models/textures/sounds are all the same in any game. They are placed in Content folder, aren't they. So how is it game specific ?
Listing mod in the menu is generic, or should be at least
otherwise I saw meh to UE4 modding
otherwise I say meh to UE4 modding
granted if they want to mod materials you'd have to create material in a specific way and show users what that is. But under the hood, it's the engine that needs to be designed to load new assets and replace existing ones
does anyone know how to get Steam stats and use those for achievements?
does anyone know how to get Steam stats and use those for achievements?
in BP or c++? I like how the docs aren't helping https://docs.unrealengine.com/latest/INT/Programming/Online/Steam/
Information specific to the Steam Online Subsystem
I'd prefer BP pls. Yep I already set it up and the one-time achievements work. But I cant get the stat based achievements to work
there really isnt any docs for these. So sad
found it. apparently the ReadLeaderboard function only works in the Event graph
@vale silo the engine IS designed to replace any asset through a patch
@vale silo the engine IS designed to replace any asset through a patch
But there is no "the menu" in UE4. The menu is entirely up to the developer, some games don't even have one, some games do it with 3D widgets, some game use Scaleform, etc.
"Listing mods in the menu" is 100% outside UE4's responsibility as a game engine
"Listing mods in the menu" is 100% outside UE4's responsibility as a game engine
@cloud cobalt how you get mod list and how you load it should be generic
it's not clear how to make a patch, which should also be generic
(for assets at least)
(for assets at least)
Patches are generic and well documented
Type "UE4 patching" on Google, first result
Type "UE4 patching" on Google, first result
I'm not here to defend UE4's modding capabilities, btw, I think they are lacking in documentation and support
I'm not here to defend UE4's modding capabilities, btw, I think they are lacking in documentation and support
But we should at least be serious about it, we can't criticize UE for not being idTech
But we should at least be serious about it, we can't criticize UE for not being idTech
simply saying modding capacity and support should be simple and documented, and bringing idTech as an example because that's what I worked with in the past, a lot.
simply saying modding capacity and support should be simple and documented, and bringing idTech as an example because that's what I worked with in the past, a lot.
Nowadays there is no competition when it comes to modding capacity, so there is no immediate incentive to improve.
and like I said earlier, only so many games benefit from offering modding capacity
I am sure Epic has a better grasp of the whole picture and if they aren't offering easy modding capacity, that simply means there isn't any benefit in it
if you are a large AAA-indie or AAA company, you have enough in-house resources to implement modding capacity on the low-level
The low level side is absolutely not the issue in UE though.
If you are a lone indie or tiny indie team, chances that having modding will help to sell more copies or build massive following are low
well, when I get to it myself and find out it's really as easy as you say it it, then I will change my mind
right now it doesn't look like it's easy and worth investing time into
Yeah and like I said, depends on your game ๐
Pretty sure I spent more time talking to you than enabling mods on my game lol
So I found some answers by reading the fine print, @grand python
The most interesting part is that the "build DLC" option tells UAT to build stuff in /Plugins/<name of dlc>/Content
So basically what I wanted
If I understand well it's really easy to do
Oh Nice
Now I'm just waiting for UE to rebuild ._.
I know what was wrong with my Hierarchical Instanced Static Meshes. The scale was off! Keep the scale of anything ISM-related to 1.0. Always. xD
@distant needle what do you mean ?
oh. I meant to post this on graphics
I got a problem like that https://www.youtube.com/watch?v=9MKHfyLUv2s&feature=youtu.be
and the reason turned out to be a non-unit scale
of the actor
turned it back to 1.0 - everything's fine
Leszek Godlewski, Ethan Carter's programmer, just told me that ๐
so now it works. I got working LODs on instanced meshes - https://i.imgur.com/mNrU9Ev.png
what if you need to change size of the instances ?
I have a general question
Hmm
It might be fitting to a different chat though
But I have a metro network - a large set of train tracks. There are signals on it
The signals work based on event system, so solving signals is very fast - the signals contribute zero tick time
But currently each signalling light is located in persistent level, while all actual visuals are in streamed levels
So outside of the levels, there's a large amount of floating signals
Should I change something about this?
Should I maybe separate the visual part of the signal & the logic part (so visual part is inside the level or something)? Though that would be pretty inconvenient
Do the actors floating outside of the level (when they are not inside the streamed chunk) contribute any considerable cost to stuff like occlusion culling etc
Should I possibly make them invisible when they are not in a loaded level
When you rebuild a project which uses a source built engine, does it rebuild the whole bloody engine?
@south ridge, how many signals are we talking here, I would say just throw some very low detail LODs on them and you're fine
We're talking like a thousand
I can render them all in one frame at ease, it's just raw object count I'm worried about
not sure how you handle gamestate and all that, but since they are event driven (no tick time), and I don't know if they have to store values. I would honestly just keep them in the persistent and give them LOD2 that has 1 tris or something
@hollow dune if you rebuild the solution it does, if you just rebuild the project it will take longer than with non-source built engine, but not as long as recompiling the whole engine i think
@frozen magnet Is there anything else I should be concerned with in regards to a source built engine? I do a build and despite I can see there are syntax errors, it's not identifying them and stating they are fine
is it causing it to fail to compile? which branch are you building?/
I forked 4.13.0
the main one
Its not giving me a failure but I can see there are errors
the compiler just isn't complaining for some reason
which means I cant open the project because it fails to rebuild the .dll
main one as in release or master?
master sorry
ok, dammit
I don't even know if its worth it, the dam SQL support files it has look the dame same as this plugins, same name particularly gets me and the plugin won't run on droid
man UE4 should really work on mobile support, this is awful
When I unload a streamed level, a few actors are being left behind. How can I make sure my actors are going to be removed when my streamed level is unloaded?
@agile wadi are the actors instantiated within the level that is unloaded?
They're instantiated by other actors in that level.
Im sure it will only unload the actors which are instantiated by that level
As in actors that are actually in the level before runtime?
In that case I guess OnDestroy on those actors will need to cull anything they spawn.
If you want to have a level that streams unload actors automatically you'll have to instantiate them through the level, if they're not the system will require you to manually remove them
Right, cheers Null.
All depends on how you build your system matey
@cerulean sequoia the signalling actors store some state related to signalling logic which AI trains read
(simply put, they store whether signal lights are lit or no)
So yeah, I'll just either make them invisible or give them a single triangle LOD so they are invisible in case an unthinkable happens and player manages to get a peek outside the level
bonus points for making a really low poly middle finger
Does anyone know how to get 3dsmax 2016 to let me zoom on a imported image, zoom lock and pan in the viewprot config doesnt seem to want to play ball but ive looked at mulitple sources that say it should work...
makes it all the more weird should the player peek outside
hey guys, does anyone know how to possess a pre-placed character inside my level instead of spawning at the level start? Its always the default in the templates
If you click on the character
type in possess in the details panel, there is an option to set a player to automatically possessi them on start and you just select which player to possess them
ahhh found it. Strange, I was sure I searched for that last night, anyways thx!
@robust garnet Another option is drag a reference to the actor placed in the level into the level blueprint and use player controller's posses node to posses that actor. Gives you a bit more control than the standard auto-posses.
yeah that would be my second idea
Does the Destroyed event not fire when a level unloads an actor? ๐
It doesn't seem to. Cheers will take a look.
not sure that will fire properly though. Worth a shot ๐
Yep that works. Cheers @ashen brook
void CopyAllAssetsToExternal(FString inDirectory)
{
#if PLATFORM_ANDROID
// only do this on Android
extern FString GExternalFilePath;
FString DirectoryPath = FPaths::GameContentDir() / inDirectory;
IFileManager* FileManager = &IFileManager::Get();
// iterate over all the files in provided directory
TArray<FString> directoriesToIgnoreAndNotRecurse;
FLocalTimestampDirectoryVisitor Visitor(FPlatformFileManager::Get().GetPlatformFile(), directoriesToIgnoreAndNotRecurse, directoriesToIgnoreAndNotRecurse, false);
FileManager->IterateDirectory(*DirectoryPath, Visitor);
for (TMap<FString, FDateTime>::TIterator TimestampIt(Visitor.FileTimes); TimestampIt; ++TimestampIt)
{
// read the file contents and write it if successful to external path
TArray<uint8> MemFile;
const FString SourceFilename = TimestampIt.Key();
if (FFileHelper::LoadFileToArray(MemFile, *SourceFilename, 0))
{
FString DestFilename = GExternalFilePath / FPaths::GetCleanFilename(*SourceFilename);
FFileHelper::SaveArrayToFile(MemFile, *DestFilename);
}
}
#endif
}```
Does anyone know why he saves his timestamps?
Most likely for the log
FString DirectoryPath = FPaths::GameContentDir() / inDirectory;
this line is strange
Why?
is it automatic concat?
of the FString
Since GameContentDir returns a FString
without an ending /
It looks like it's automatically doing it
Nah think about it
usually I would have to use FStrings overloaded operators
In your project
you have Project Name > Content
It is a string yeah, but it's building a string
I never knew you could build them like that before
* Concatenate this path with given path ensuring the / character is used between them
*
* @param Lhs Path to concatenate onto.
* @param Rhs Path to concatenate.
* @return new FString of the path
*/
FORCEINLINE friend FString operator/(const FString& Lhs, const TCHAR* Rhs)
{
checkSlow(Rhs);
int32 StrLength = FCString::Strlen(Rhs);
FString Result(Lhs, StrLength + 1);
Result.PathAppend(Rhs, StrLength);
return Result;
}```
For the curious.
from FString
I was wondering what an earth / was.
// This is a single line comment.
/* This is a comment block that can b e multiple lines long */
don't forget
/// Super dark comment
that's an operator override btw
the /
you make an operator handler that says "if we're trying to divide FString A by Fstring B return Concat(A, "/", B)"
slate is full of this stuff
makes sense with paths though, that's a fun usage
r u sure
Owner of a loney heart / roundabout
FString j = "Content/Databases/ML_DB.db";
FString k = "/Databases/ML_DB.db";
FString l = "Databases/ML_DB.db";
FString m = "/ML_DB.db";
FString n = "ML_DB.db";
if(sqlite3_open(TCHAR_TO_ANSI(*i), &db) == SQLITE_OK) { UE_LOG(LogTemp, Warning, TEXT("#!!# [1] #!!#")) }
if(sqlite3_open(TCHAR_TO_ANSI(*j), &db) == SQLITE_OK) { UE_LOG(LogTemp, Warning, TEXT("#!!# [2] #!!#")) }
if(sqlite3_open(TCHAR_TO_ANSI(*k), &db) == SQLITE_OK) { UE_LOG(LogTemp, Warning, TEXT("#!!# [3] #!!#")) }
if(sqlite3_open(TCHAR_TO_ANSI(*l), &db) == SQLITE_OK) { UE_LOG(LogTemp, Warning, TEXT("#!!# [4] #!!#")) }
if(sqlite3_open(TCHAR_TO_ANSI(*m), &db) == SQLITE_OK) { UE_LOG(LogTemp, Warning, TEXT("#!!# [5] #!!#")) }
if(sqlite3_open(TCHAR_TO_ANSI(*n), &db) == SQLITE_OK) { UE_LOG(LogTemp, Warning, TEXT("#!!# [6] #!!#")) }```
desperate times
desperate measures
@foggy valley have you worked with android or sql before?
crap
I would like to discuss the state of moving and deleting assets in the editor and why it relies on RNG
rng?
0 for success, 1-10000 for failure
if even number, restore deleted or moved folder
just kidding, it happens way more often than that
0 for success 1-10 for failing to fix redirectors correctly.
pretty much
it's ridiculous
stay deleted you fuckers
don't make me visit you in explorer
you talk about the folders? that are not redirectors
its a bug that was fixed in 4.14
Guys, I'm in need of some help. I just recently set up my new computer and am trying to download the launcher, but the download keeps looping like it goes to 10% and then back down to 6% and then back up again...anybody run into something similar?
@crude flame - Hmmm - I do not think that I have ever encoutered such an issue
hmm..it;ss extremely frustrating...
@crude flame - I bet. Did you install all your windows updates yet?
Just curious
Like all service packs
Unless you use OSX
Then GG
I cannot help you sadly
I think I have a couple windows updates pending..im on windows 10
@crude flame - Try and download those
this OS has been nothing short of a nightmare so far
I bet
I personally need to reinstall windows 10
Soo yeah
Not looking forward to it
:\
the automatic updates is annoying, these updates have even given me a bluescreen a few times
computer troubles and car troubles are the worst..makes ur life miserable lol
Totally
So I almost succeeded in having mod support in my game ! Just need to understand why mods don't load now ๐ฆ
For those interested I have a series of questions about modding here : https://forums.unrealengine.com/showthread.php?123419-How-can-I-release-a-modding-SDK-for-my-game
Hello,
After years of work, my game is nearing completion, and we've started taking a closer look at modding. Our title supports it on the technical side - we can detect and use mod content, assets can be replaced, etc. The game-specific part is all but done. The releasing and process issues appear to be much more complicated that anticipated, though. After much discussion on UnrealSlackers and this forum, some questions are still up in the air. Let's get to it :)
My game has a C++
Didn't get a reply, @floral pagoda
:\
But it's not like I'm in a hurry
ok
Not sure why the mod doesn't load though, that's probably an issue on my part
The world may never know ยฏ_(ใ)_/ยฏ
It will, when I get it to load
I mean the mod file looks OK
The game just forgot to load it ยฏ_(ใ)_/ยฏ
The main issue is the near-complete lack of documentation, online discussions or tutorials
Sometimes it feels like no one has ever shipped a UE4 game, because you always find entry-level documentation, and precious little data on releasing, patching, etc
Hey guys! I'm sitting with one of those G25 Steering wheels, and I found a plugin earlier for it, but it's for UE 4.7 :/ What can I do?
http://www.infiniteproduction.eu/downloads/ue4-steering-wheel
see if it compiles for higher versions
according to your website the source code is included
@tawny veldt : I would probably pay an expert... which would be me :p
Indeed it is included, @cerulean sequoia , didn't realise ๐
@tawny veldt There's also "Logitech Gaming SDKs" for free on the marketplace. It also contains support for Logitech's steering wheels.
It looks like it's more up to date and has more features.
the TSky plugin for SDL works with anything. I would use that because you can rebind stuff anyway you like with it
I haven't used it yet though, it was missing all documentation last time I looked at it (a long time ago).
Hmmm
https://github.com/tsky1971/UEJoystickPlugin //this one's on me :p
No force feedback in that plugin.
Well, I have nearly no coding experience, other than what is inside UE with blueprints, so this'll be fun
If you don't need force feedback that UEJoystickPlugin might be good enough. Otherwise you're pretty much going to have to use Logitech's plugin.
I'll play around with both and get back to you if I get it working ๐
thanks for the insight
OK, I'm having some trouble understanding their instructions >.<
@eager blade if I sent you the documentation, would you be able to help me a little further? ๐
Maybe, but I don't have much time right now since I am at work.
Which plugin are you using?
Trying out the SDK first
I did stuff up until the Fmodulemanager part, because it doesn't really say where I should add these lines
Also it shows up in the editor, but I don't really see any documentation on what the plugin can do xD
Sorry, my boss just assigned me to something so I'll have to take at look at this when I get home.
Damn bosses ๐ haha enjoy and thanks for the help anyway :p
@tawny veldt logitech SDK on marketplace is pretty much same thing as that old plugin that's around, with one key difference
it doesn't have any ue4 input mapping / bp support
so it's only usable from c++ directly as is
I read that earlier, and tried the joystick plugin instead
and actually just got it working and showing up in the editor
But I'm having a new annoying issue >.>
also
Hi all,
i've made a Logitech G27 steering wheel plugin for UE 4.7.6, based on the one made by ENiKS (Thread).
It supports all buttons and input axes/sliders as input mappings and events in blueprints. All the force feedback functionality is exposed as well, programmable via Blueprints too.
You can find the source here: https://bitbucket.org/whiten01se/logitechg27plugin
One thing is worth noting: I didn't bother to implement a Win32 path for this plugin, but you can do that yourself
that's a better version of that 4.7 plugin
I've used these all on my g25
Hmmm..
currently just using the marketplace version but I've fixed it a bit
you get the source code with it too
So I should maybe try this one you linked
so you can manually keep it up with engine builds
basically since the implementations are so similar
the joystick plugin I just tried shows all the inputs, but they don't change when I do anything with the wheel
you could even take the marketplace plugin and merge the changes on that old plugin
they use same sdk after all
yup, you won't get those with the marketplace asset alone
but it's just a wrapper
(that input mapipng thing)
you could also use the SDL based joystick plugin if you want
but you won't get as nice prebuild FFB things with it
That's the one I'm using
FFB, is that force?
with logictech SDK you just give commands with functions that are selfexplanotary
it couldn't be much easier
(for forces)
Let's say I downloaded the one you linked me
it probably won't compile on 4.13 ๐
.<
there's just been so many changes on c++ api
4.12 can do too
I think I've last used that on 4.9 myself
but I always update the api changes on my project so it's easier to maintain
this is the downside of not having proper joystick support built-in to ue4
someone still needs to keep the 3rd party plugins up-to-date
so you basically need to know some basic c++ stuff for it
Ok, then instead, let's say I just kept using this joystick plugin
would you know what I could do to make it actually grab these values properly? Because when I do a print string with any of these buttons, they never change
does any other input work?
on that same actor
like have you enabled the input for it
also possible that some plugins don't support hotreplugging controllers
so you could try to start the ue4 editor only after you've connected your wheel
I haven't used the SDL version of that joystick plugin
I initially tested the directinput version before someone ported it to sdl
Does anyone here know if it's possible to use the foliage tool inside a blueprint?
I'm making an infinite runner type of game, and I'm spawing chunks of landscape. And I would like some trees on those chunks which are blueprints.
What do you mean via blueprint? Like the foliage blueprint?
@cursive dirge I have just opened up a vehicle template project, and their inputs work fine, and I'm just adding the new ones in the same blueprint they're using. I have only started UE4 after the steering wheel was connected
You could try adding the trees on the cunks and then save those chunks with the trees on it as a BP
and then spawn those BPs in your runner BP
like you do with the landscapes
@grand python Adding the trees on the chunks in the level editor?
@tawny veldt yeah, I dunno, I'd check the plugins docs first
like how it should be setup
there could be some init somewhere
I can't seem to find the instance of the foliage that was generated with the tool
It only tells you how to install it, and then says.. "Now you can map Inputs to Joystick devices in Project Settings. (Engine->Input)"
hm. Sorry cant help you with that then. i'm just a beginner too :P
@grand python Ah, well thanks for the help so far... I even tried making the trees in blender, but now I'm having so many problems with light UV mapping
Yea best is to add them manually like you added the landscapes
@cursive dirge I'm starting to think maybe the solution is to just see if I can somehow get the plugin you linked to work >.>
hm.. i'm thinking of a way that works with raycasts. and places trees on the hit points
That's pretty much impractical since I need lots and lots of foliage
It can't be any type of blueprint spawning. That would kill the performance ๐ฆ
Aside from the chunk spawning that is. They need to be complete as a whole for it to be playable on a mobile I think
@cursive dirge Okay, I think I figured it out. 4.13 doesn't like the plugin, but 4.12 is fine ๐ Except, it tries to normalize the values to -1 and 1, but they still jump around to -4 and 4 while turning the wheels
ah
I'd check the warning on 4.13
they may give hints why it doesn't work properly there
@tawny veldt you could just clamp the values to -1 +1 so that those spikes don't matter anymore xP
@cerulean sequoia <3 I'll try that first thing tomorrow :D
Anyone know how I can change everything in my project to UV source channel 1 instead of 0
A bunch of the objects I imported have bad uv mapping and some of them keep going back to chanel 0
So can you not make a spawnable level sequence that is in local space? I can't seem to find anything about this kind of usage
@tough kayak go into the mesh editor and change it
np
@tough kayak you can also pick the UV source on "TextureCoordinate" node on individual materials
not a project wide setting though
Anybody knows if theres a way to get the scale for each instance from instnaced static mesh
in the material editor?
?
@tough kayak you can probably save you some time and change those uv channels via the property matrix, could be exposed there
I can't find a c++ version of this delegate, does one even exist because I can't find one in the API docs. https://docs.unrealengine.com/latest/INT/BlueprintAPI/EventDispatchers/ApplicationWillEnterBackgroundDe-/index.html
Application Will Enter Background Delegate
@plush yew Can cheat it
with a 3 Param
and when you create it, get the scale then pump it into the param
LogWindows:Error: === Critical error: ===
LogWindows:Error:
LogWindows:Error: Fatal error!
LogWindows:Error:
LogWindows:Error: Unhandled Exception: 0xc06d007f```
Damn it, what do ๐ฆ
When does the fatal error happen, what is the editor doing the moments before?
@feral dirge
Trying to fire up Steam, having fun trying to debug it
I wish they wouldn't change core engine features like the OnlineSubsystem without updating the docs
That just makes me sad ๐ฆ
Yeah, I've never understood the habit they have at epic of updating core features and updating documents months later.
Why not release the update some weeks later then planned if it would give them enough time to write and post docs
also you'll learn very quickly that the steam online subsystem implementation sucks
and for some reason you can't use the ipnetdrv with it? i haven't found a way that works, right now we're using the steam net driver which uses steam's p2p networking lib and you can't join servers by direct IP
Yeah but that's easy to get around
You can use a Master Server and an alt subsystem and all that shit
Day3: Managed to get the launcher to Update. Now for some reason, can't downlaod the engine...yay
probably faster to download from github and compile the engine yourself
is there any alternative to swarm?
the plugin I'm working on does lightmass baking using the GPU and can do it across a network
not UE lightmass though, it all ends up in a parameter in the material
writing to the actual level lightmaps is in the future
if i was buying/building a new PC for UE4 dev, am i better off looking at a faster quad core processor, or a "slower" hexcore or above? for example, a 6700K vs 6800K?
go haswell, get 12 threads
I have found it to be real good
in general 8 threads is a bit limiting and 12 is fine
i'm finding that at the moment, i'm running a i7-4770 with 16gb ram, ram isn't getting smashed too hard, but the processor is struggling a bit
the editor scales nicely with more cores tho?
@candid smelt seems fine on a i7-4930k not sure on the spec diff.
I do have 32gb ddr3 though
at home 6600k, smooth as butter.
w/ 16gb ddr4
Hi there. I'm using the Profiler for the first time to optimize my project. How can I identify the big bugbears? Is it just the "Inc Time" in ms? Is this the correct spot to ask this question?
I just usually follow the chain of the highest milliseconds, follow the red, identify the trouble function or line and go from there. It's all a bit of a mystery except for a few key parts. Kind of a specialised deal.
Does anyone have some experience with running a alpha / beta? More specifically, gathering data from test players?
yes, but we made a server side stats backend (multiplayer game)
Well, this is something I want to do, but I have a single player game. I wanted to record how much time / retries it takes for people to complete each level.
our game servers just send a JSON payload with the stuff we want to record
and that gets recorded to a database
Are there any plugins for something like this? I could probably write it, but I don't think if would be an efficient use of my time.
I was just wondering if somone can help me out with a modelling problem?
sure, what's up?
but yeah, usually it's just better to ask the actual question on right channel instead of trying to find a single person to help you
the engine has stuff for JSON serialisation and sending HTTP requests
he might mean like, supermodels
which I am all about
or she
let's be real here
oh, don't PM me
0lento is right, ask your question here
that's what happens when you offer up ๐
yeah
it's better to ask here unless you are under some sort of NDA
So, im just having a problem with concepts.
I want to make a giant-ass cave. I dont know how i should do it.
haha I guess
that way more people can help you
I'd take a giant ass dirt and make a giant ass hole in it
XD
the person you ask directly may not always know the answer
or.. you get more suggestions
in all seriousness, metaballs and booleans
antidamage is handsome too, are you sure you aren't a supermodel looking for advice on what tiny scrap of clothing to wear?
man I'm just noticing that all my advice comes with sexual harassment
My concept art looks like crap lol
well try to stick to it, you wanted your cave to be giant ass
I see what you did there
so what are you modelling in?
Blender.
I don;'t know blender at all
naw he wants to model one
he's having trouble with modelling concepts
the concepts of modelling
well, people still use real 3D models as part of concept art too
oh
well
step one
google for image references
find something that looks like what you want to do
to get the feel of the scale and shapes
yeah I'd make a subdivided tube and distort the crap out of it
then add in ledges and shit
caves are unforgiving, there is no consistent scale to a cave
if you don't know what it should look like, it'll not look good
well, details still should have some believable scale
unless it's some low poly or artsy kinda environment
No.
I just... dont know if i should do it in parts then glue it together. Or do it in one big heap.
I tried foing one big heap, but then it got really irritating.
After about a year of on and off work (give or take 5 - 6 months if I dont count days off/rl stuff) I think I am at a point where this is ready to be released.
I bring you the one and only cave package you will ever need (I hope :) ):
Luos's Modular Rocks & Cave package!
https://www.youtube.com/watch?v=ZzJotdHdlf8
that one is really modular
I'd do all the details as separate meshes too
you could do the walls as bigger chunks if you want
if it's one off kinda thing
okay
well, simplest wall is just a plane you flat subdivide, curve it a bit and add noise to it
that takes like two minutes in modo, you'd think blender can do those things too
that'll not be modular though, but you get the idea
hmmmm
I'm looking at unreal c++ api docs
I was going to write a post on the forums about it
I took a peek on unity's camera docs
and unreals
Copyright 1998-2016 Epic Games, Inc. All Rights Reserved.
for example, "GetCameraView" on that page has description "End of UObject interface."
like, what?
also 1/3 of listed items don't have any description
only the most obvious ones have been explained
or, well, I guess those rest are pretty obvious to most too
besides ResetProxyMeshTransform and RestoreFrustumColor :p
Unreal has a big documentation issue
yeah
I've talked with Lauren about c++ api docs, she wanted me to point out some inidivdual places where the docs were bad
but it's not just individual place, it's basically the whole c++ api doc
most of the other docs are fine
On some level it's understandable, it's hard to define when a class is an internal or public-facing
But the camera component -_-
also, they list some new things as DEPRECATED
not on that class
that's mainly some scripting issue when they parse these things
but the bottom line is, that these descriptions are not consistent
if you look the main level description
OnComponentDestroyed
Called when a component is destroyed
and then open the function etc
^ oO u dont say
it can have totally different text
heh
that's my favourite example when I describe why the api docs are bad
they usually just point out the obvious
at least on things that are not really basic
that camera component is bit bad example about it
as it's still better documented than most o the things I've seen
I also lol'd a bit at this page
description: "Copyright 1998-2016 Epic Games, Inc. All Rights Reserved."
on half of the items
The latest thing I started in UE is modding support, and it's amazing how there is close to zero documentation & support.
well, have you checked docs how unreal implements physics or multiplayer prediction?
they only tell the higher level things on generic docs
Multiplayer was extremely well documented on UDK, so that's surprising
I haven't seen a single page on official docs that tell that only character class has multiplayer prediction built in
and no page describing how the prediction even works
Physics are done by third-party code so it's less shocking, plus Unreal generally sucks at physics (physics-based game dev here)
oh
I mainly meant, there's no docs that describe how unreal implements the physx integration
most of the ue4 devs I've talked with don't even know physics get calculated by default once per tick
nor understand why it's bad
on unreal that is
Unity actually ticks physics at fixed steps
with same physics engine
there's also hidden functionality on physics side, like ability to run custom physics code on substeps which isn't documented anywhere
substepping itself is mentioned on few pages though
UE has substepping support though
yeah, but even that is still tied to framerates
it just adds extra physics steps if frame rates go low
the whole logic how it calculates it is also usually hard to explain, due to the way it's implemented
there are lots of conditions
btw
there used to be a good doc page how unreals character networking code worked
it was on the old site
many webpages actually link to it
but it doesn't exist anymore
Yeah I know that page
Anyway, my general takeway is that UE4 is the best engine for large-scale games with classic technology
Like doing a shooter
Or a race game or...
well, racing game is hard
as it involves physics ๐
and that's pretty messed up on unreal
Yeah but you can get away with it I think, it's not like realism is super essential in most race sims
if you do like single / local co-op game, it's ok
it's a game framework. you can use as much or as little of it as you like
you can treat it like a graphics engine if you want
as you don't have to run the same simulation on other computers
@foggy valley that's pretty much what I do atm
there you go then ๐
I replace unreals input system, physics calculations etc ๐
UE starts to fail when you want to do something really out of the box
Because it's very much a rigid, monolithic system
I really wish they didn't hardcode some of the stuff in the engine
the input thing kinda pisses me off tbh
for example
I want to say that it's not that monolithic
by design
you can't do local splitscreen that would use keyboard + gamepad
as unreal hardcodes that keyboard and first controller is always player 1
a non-monolithic game engine would be incredibly hard to debug
ah I see
yeah that's crap
you need to have two controllers to do local splitscreen
The rendering pipeline is definitely an immovable, giant unhackable rock, and at some point it can be an issue
also
fix it and make a pull request? ๐
builtin input system doesn't support anything but xinput and steam controller
the RHI is getting heavily modified soon
so if you have directinput device
You can't fix the architecture :/
it won't be so bad then
like steering wheel, flight stick etc
you have to use 3rd party plugin
and then you'll get all kinda of mapping issues with the splitscreen thing to
I just replaced the whole thing myself
@foggy valley One piece of example is how you can't exclude objects from AA in the scene
also
splitscreen is also hardcoded
you add a player
you get splitscreen
local player that is
you don't have much control over the viewports
3 player splitscreen is forced to have one bigger view and 2 smaller ones
you can't like split the screen in 3
I don't know enough about deferred rendering in UE to know if the AA is unreasonable or not
but I would like to see MSAA
MSAA works on 4.14 and forward
@cursive dirge You can probably use your own viewport subclass
I've used it
hmm yeah this all sounds like shit
let's switch to unity and spend ten years writing the features we wanted from unreal ๐
it's a trade-off
@cloud cobalt sure you can mod the engine
@foggy valley MSAA is only on forward, isn't it ?
I think so
I had to mod the viewport class to re-enable bloom on splitscreen
@cursive dirge Can't you subclass the viewport from your game code ?