#source-control
1 messages Β· Page 9 of 1
Review Tool
You can use the UE Review Tool to list all the assets in a shelved or submitted changelist. When you use the UE Diff Tool, the Review Tool is used to review those assets. Currently, the Review Tool is only supported for Perforce.
The Perforce hugging is insane ;_;
(from 5.2 release notes)
Perforce has been industry standard in gamedev for quite a while, so it is understandable
The company is considered a leader in the gaming space, with 18 of the top 20 games developers including Ubisoft and Electronic Arts using Perforce version control.
So I have a basic homelab running Gitlab with LFS but recently I've been getting a lot of asset errors trying to load my project. I remember a while back I looked at perforce but the issue I kinda had issues with but couldn't find anything really saying else wise but for basically a solo dev, do you only get 10 projects even when self hosted?
because I typically jump projects quite a bit and I don't really want to be hindered from the 10 max projects
perforce's free limit is 5 users and 20 workspaces, there's no concept of "projects"
Ah is workspaces like groups or something?
Because I assumed workspaces were projects
no, a workspace maps files on the server to your local PC. Generally you have one workspace per project per computer, though you can do fancy things with that.
You also don't need a workspace - if there's an old project you aren't working on you can remove the workspace but the server will still have whatever files you previously submitted.
Also that review tool is specifically tied to Swarm, which is P4's free review tool. So if you're using something third party it won't work with that
I don't think it is? Docs say it works with shelves and submitted changelists, so as long as whatever review tool you're using also works with shelves it should be fine.
Yeah I'm aware. But having those features for all the SC providers UE supports would be nice.
is there an API to support it for others?
using svn atm, visual svn with tortoisesvn, but oddly while SC is 'enabled' , I have a yellow circle with |! inside, which is ?
You mean these?
Or the tortoise icons in explorer?
sorry I was a bit vague
It 'was' in lower right corner of ue5 UI for souirce control
but now the yellow circle with ! inside , shows green
wwwwwwwwwweird π
anyway Im having trouible with svn, leaving perf and git behind , for now too much trouble etc.
so svn
visul svn waseasy,setup FINE
tortoise is a mess unless Ihavesomething wrong
right click on proj dir, ihave no svn checkout
thats the issue atm, ty for any help with this
ive used tortoise in past and found it acceptpable, so...
I ran into LFS git, so decided its not worth the headache
Hello, I have a question about git. I saved my project on a git server using Sourcetree, now I want to switch all the repository to Github. I don't know how to do this, I tried to import a repository using the github tool but it show an error. I don't really found solutions on internet. Can someone know were I can start ? Thanks !
never heard of sourcetree for one
I was using, trying to, git/github but whenI realized the large files were causing trouble and stopped andwent to pure svn
having said that, on import from sourcetree, what error are u getting
The only error is "There was an error importing commits." without any information. I found a better way to clone the repository from Sourcetree to Gitlab, if it's work I will share you the solution.
Solution : I switched to gitlab, and imported with URL and login and it work.
ok
oh btw all, I found svn checkout, its NOT under RC > tortois, its RC > show more options > svn checkout , who knew!! <outdatet docs > ha
Hi all, recently just got perforce set up with a project I am working on in unreal. I believe I have setup the p4ignore and typemap properly. When I am in the editor and hit play it takes 10+ seconds to play now whereas before it was almost instantaneous, wondering if I may have set something up improperly or this is just the price to pay when using source control with unreal?
Replying because I'm dumb, don't think it had anything to do with perforce. I cloned the original project I was working on and it looks like something in the cloning process made the cloned project behave weird/laggy. I moved the original into perforce and am having no issues.
you can make sure you pay attention to UE's output errors... it probably told you what the problem was
e.g. ensure condition, couldn't write to locked log files, or something like that maybe
I wanted to deploy perforce server on my PC, but I don't know where to start. I have no knowledge on networks and whatnot. I'd rather not use AWS because initially I wanted to stick to something free. I'd appreciate any pointers as to where I should start.
did you checkout tutorial on perforce websiste
its , OUT dated,maybe by now its been UPdated lol
eek
there is also doc page at UE websiste for each source control choice, including per;forfc
perfordce
-d o_0
ive gottenit working, but its still Buggggy
a little anyway, most are ikm finding
I think I set up a perforce server locally, but it is only for me. I wanted to let my friends connect to it as well - this is the main issue I'm trying to tackle right now.
Is there any sort of guide on that?
I saw couple of docs about setting up P4 server but all of them mentioned setting up server locally and I could not really figure out how to make it work for other team members
have you looked at ue doc page on pervf
perforcfe
Fill in the connection information for your Perforce server and press okay. Once you have connected to the server in P4Admin, you can make new depots, users, and groups pretty easily. Use P4V and the Unreal Editor to connect to the server with the credentials you supplied in the initial connection dialog.
from ue doc page,so yes
never tried, im solo, free is up to 5 users,thats it
The server is local to you, so on your local network only. For your friend to access you either need to setup port forwarding on your router, a vpn on your router, or some virtual lan software like Hamachi.
Is there a way in p4 to auto checkout the vcxproj.filters when I create a file?
Those are regenerated files and shouldn't be in perforce in the first place. You can ignore the Intermediate directory
And that's probably the problem
Is there any cache somewhere for the source-control plugin that can be cleared? I've moved some folders around and now it keeps complaining about not being able to find the folders in the old location
Using git with UE5.1 btw
What's the preferred way of renaming the root workspace? I get the concept of updating the root folder in perforce via the workspace tab and syncing it so that it recognizes the mapping and sees that the new root is indeed the same files as the depot server files
well fuck
Has anyone had this issue with perforce, where it fails to fetch the correct filename? Occasionally, I have filenames that get shortened to a ? character. There are no fancy or unsual characters in the filename.
Okay well after many failed attempts at googling, chatgpt to the rescue. There was a cyrillic character and other encoding issues in some filenames. Changing perforce to unicode mode fixes it
not really related to UE but still - in context of SVN (using tortoise), is it safe to cancel a checkout of a huge trunk and resume it some time later without re-downloading the whole trunk or breaking something locally? I usually used perforce before new project and it was fairly robust in terms of I could run "get latest" and pause at any moment and everything was always fine but i'm not sure if that's the case with SVN
Not used svn for about 15 years, but it should be robust like that.
@dim jackal https://stackoverflow.com/questions/4031845/svn-resuming-aborted-checkout, this should work, never done it, but it looks helpful for you.
I am using svn-tortoise latest also, so this is good to know.
Thanks guys. Maybe someone also knows if there's anything to do with .svn folder size? It takes the same size as the repository content (AFAIU it actually is a copy of repository for SVNs internal uses). Ultimately I'd like to just delete it to free some disk space but I guess it will just break the local repo π
Yep it needs atleast a second copy of latest. Unfortunate fact. It does grow with every update and check-in etc, but with tortoise you can do an svn cleanup which removes all but the latest in the .svn folder
Might help if you translated it to English. Not everyone speaks French (?)
I don't suppose anybody has experience getting a Perforce server running inside Docker via Unraid do they?
I want to make sure that apart from the repo data, Perforce is entirely constrainted within the container - but P4 likes to install stuff all over the system
Does anyone use plastic scm? recently upgraded to the latest Unity Version Control and now in UE 5.1.1 it's not showing items as checked out to other users when I check an asset out
Hello,
I recently moved a project to Perforce and got it all set up however Unreal is very slow to open and close blueprints and run the game.
Looking this up it seems to be the ignore file. I fixed this up and ran the CMD command. Tested it with a file and it was left out of the add because it was ignored.
Do I need to delete and readd my project now that the ignore file is working or can I do something else?
@elder hare tried, but never got it working plus I understand unity isn't in control anymore as they allegedly sold it, but anyway so I doubt I could help :(,,,,but I take it, the 'check out' icon isn't right ?
@vapid pagoda ignore should have no bearing on anything ,iits a simple prob.very fast filter
should be quite fast, assume your rig is up to it...
up to game dev , as in, assuming it is.
Thanks for the response.
My project worked fine before perforce. the googling I did made it seem like when opening and closing blueprints it checks the server and that part takes time.
Have you seen this issue before?
news to me, wasnt' aware ue could even do such a thing with sc
barely got a start with perf. so who knows
The point is to detect if a file is already checked out by somebody else. For me it seems that saving is the most reliable point at which perforce sync the file status - so my habit is to move a node a bit, press save, and see if the file is free for checkout. ( we have over half a dozen coders so collisions are not uncommon, better to catch them early )
I'm a bit confused by your response.
The issue I'm having is unreal engine takes ~30 seconds to open a blueprint or asset and takes over a minute to close one.
However, this happened after setting up perforce.
ah. That sounds very unusual
try disconnecting perforce in unreal first, is everything normal?
if yes, connect back, and look at the version control specific logs
Unreal also does not seem to auto connect to sc.
Maybe that's part if the issue
It does sound like something is not quite right in the setup
Check Message Log window, Source Control category
running in your project root these on commandline : "p4 info" "p4 set" and "p4 client" can also help gain understanding of how things are set up for you
going by https://docs.unrealengine.com/5.1/en-US/using-svn-as-source-control-for-unreal-engine/, filled in value for repo and working dir, but trying to do svn > add, is only working in DIR where all I see are 3 dirs, branches tags and trunk. then later on doc pageim supposed to, To add the files to your repository, select the items in Windows Explorer and then Right-click to add and select the TortoiseSVN->Add option., indeed tortoise > add ,is there in right click menu, but there is no menu to search for proejct to 'add' anything, what am Imissing here ;0-
docs are set for 5.1
sanity check
) you have a server set up
) you have the empty starting repo set up
) you have a ( hidden ) .svn folder in the project, which determines the repo connections
) your project folder has a little green checkbox in explorer, showing a working svn connection
via visualSVN
named, on p0rt 443
used tortoise svn to do right click svn checkout
checking repo
not exactly empty repo
no project files,correct
groups.conf htpasswd and two otehrs
no idea if its hidden or not honestly LOL
my project folder to you mean with all the maps and project file itself, content folder, everything?
you have a folder that looks like this as the checked out repository?
this is a traditional format of the content of that folder
inside trunk is where your unreal project should actually reside
ok sorry yes its named,and has green checkmore onfolder icon
yes makes sense
hows to I 'add' files to it though
do I
try making a test.txt file inside trunk and Add it
ok, you are on the right track now
next you want to copy your unreal project into trunk then add most of the stuff.
You don't want Binaries, Intermediate, Saved folders.
Look for a good svnignore file for unreal.
ahhhhh
Pleased to help
Have a good one : )
yeh unreal docs are a bit sparse
SO close, haven't copied anything else over ,just testing ue5 subv connection..so-- on attempt to get SCup and running in ue5, I 'accept' settings,and oddly ? get this: svn: E155007: 'G:\Documents\Essence\Test2' is not a working copy
cant' figure out, where engine SEES this...
that is the project,itself o_0
nowhere am I referencing that as repo or working..nowhere
and yes, all project files,maps all ofit, intact and loaded inengine, right now ;)))
have you committed the adds to the server
user 1: add -> commit ( submits changes )
user 2: update ( gets changes )
not yet I was just verifying ue5 can 'see' where repo is and connect to it, its seeing my prioject dir, as the repo ;0-0-
no I wanted to do that last as above noted
error > 'G:\Documents\Essence\Test2' is not a working copy
dain right its not ;)))lol
terminology sanity check
- remote repository ( server )
- local repository ( your project ) <- this should be under trunk right?
ah I did get the terms confused a bit
Im not doing remote, all local
sorry I should have mentioned that ;'00-0
no
I can't connect w/o errors, just a test, 'G:\Documents\Essence\Test2' is not a working copy
im testing , connecting to source control in ue5
then ill add projecdt files to working dir and add them
I just wanted to ask,about the weird error, engine thinks, project dir, is working dir ;90-0
once you launch unreal inside the trunk folder, it will look for the .svn folder and start linking up with that
ahhhh
it can't link if the project is not under the .svn folder structure
Hello, I work in source control with Git. I don't know why, every time we do a commit the file "editorperprojectusersettings.ini" is updated. Can we add safely this file to the .gitignore?
yes, ignore
Thanks!
Got a problem with perforce. Basically, I had some problems with one of the last submissions and we had to make a rollback. Now, I want to override the latest changes, but I can't do that because P4V tells me that I need to do a get latest revision first (which makes sense, but in this particular case, I don't want).
It should not overwrite your copy of the files
if your super worried, Backup your own copy and pull to latest. Then checkout the project and file and overwrite the files. This will allow you to update the files to the current one~
though this is as well why you should be using streams
Mainline
~ stream one is testing
~stream two is active development.
not a problem.
Anyone have experience with
Multi-User Editing / UGS ?
Do I need to setup UGS first?
I have perforce running the backbone and two users. One other and I.
Never messed with this part or thought about it in the past.
Or if anyone has experience any notes on it?
Reason for use is so that I and one other can work on maps together at the same time.
The process to rollback is to use Undo Changes commands, not to get an old revision and submit it. You must always move the state of the repository "forward". Getting an old revision temporarily moves you backwards, so you have to come back to present time (get latest) before you can keep advancing forward
In that case, the cleanest solution is doing what Azaru proposed? I did that and it worked but I think that's not the proper workflow. I suppose there should some sort merge tools for this sort of situations.
sorry for this crazy delay. Ya if I check out a file I do see the red checkmark, but nobody else can see it : /
Hello, I have some old Perforce project directories that I'd like to get rid of. What's the best way of doing this? I want to clear up space on my local disk and my AWS server.
plasticscm/unity version control exclusive check-out is totally broken for me : /
If you want to keep them and the history you can convert them to Archive depots, or if you don't want them use obliterate (backup the last version of course if you want to keep it)
Thank you! I'm trying the archive method. Does the archive depot have to be on my AWS server?
No you can mount another volume temporarily, and disconnect it when you're done. It must be reconnected if you want to access the Archive depot files of course.
Like a HDD for instance?
Yeah, or another cloud volume. Not sure on the specifics for aws but on a server machine we used USB hard drives for long term backup and disconnected when done.
Thank you! Last question! Sorry, I'm a noob. I set up Perforce for a project I worked on with a few others this past year, so I'm no expert. I just want to archive it properly in case I return to it later on, and in the meantime, save AWS space and money.
If I want to archive 'depot', I'm reading from Perforce's documentation that I must create an archive depot first. However, I don't know what to specify as the path for my HDD. It throws an error when I use "F:\Circadian House Archive" for example. Do I have to do this through a CLI? You're saying I can just convert my 'depot' to an archive. Is this a better way to do it, and if so, do you have any recommendations on where I can learn how to do that?
Sorry I have to go out now. I can't remember specifically... you may be able to just move the depot root to a different path without going the Archive root...
Thank you for your help!
Got it to work! Woo π
any idea what permission this would be?
No idea how to determine if there is any corruption : /
I think all my repos/workspaces are affected : /
I did upgrade plastic scm to unity dev control recently so maybe that has something to do with it but even my new repos have the issue
Ive never worked in a multi user env so I can't[ say how to go fwd, but in general sometimes permissions can be wrong if there is data errors on devices , etc.
Im only solo right now , always have been, sadly or not ;)))
HM well, I did think about plastic, never could get it working, but when I learned the other day ,unity doesn't own it anymore, I had second thoughts, but having said that, sorry you're having issues, I had an ok time using unityits just been awhile, had a hard time getting basicd things done given my overalll lack of programming skills so I stuck with ue
What's the easiest way to copy files from a specific CL into a separate (non workspace) folder (P4)?
Lets say, 4 months ago I have submitted 400 files at CL 100
I want all of those files from that changelist (only those) with the state at CL 100, to be copied to a separate folder that is not a workspace (e.g. D:/Files/).
In svn I could select the revision (CL) in history and drag and drop the files, I cannot do that in P4V.
some options with p4 print is probably what you want
p4 print -o C:/some/folder/... //depot/main/...@12345
err, don't use that second file spec but it'll be something like that
Thank you, will check it out once my cleanup finishes.
Will it work with binary files?
it'll work with any kind of file - just don't do exactly what I said as it'll get all files at that path since the given revision, not just files from that specific change.
probably need to play with options in print: https://www.perforce.com/manuals/cmdref/Content/CmdRef/p4_print.html
and filespecs: https://www.perforce.com/manuals/cmdref/Content/CmdRef/filespecs.html
hey guys, im looking for a way to have multiple devs work on a UE5 project from computers (not on same internet connection). I was looking it up but there was so much I wasnt sure what was best
Is anyone familiar with this and able to help?
thank you, on the first glance, it doesn't seem like I can do wildcard and just let the changes in CL handle affected paths, unless I don't see that option, since /... will copy all affected files in the provided path, not the changes in CL, just as you mentioned (e.g. if CL changes a lot of different places like Engine/Source, Engine/Content, Project/Source it's going to be pain)
Though I can run a script with p4 describe CL and let the result of that be piped into p4 print, it's better than nothing
yeah, that may be what you end up having to do
by the way, is cleanup in P4 really slow or is it the server that the P4 is on?
On SVN, full repo cleanup took like 30 minutes. On P4, I am at 2 hour mark for the engine folder alone. Just wondering, since I don't have access to the server and it's 2AM to hit anyone up π
reconcile is incredibly slow, yeah
avoid it unless you absolutely have to use it (and when you do, limit its scope)
Reconcile is "dumb" in that p4 has to hash every file it's trying to reconcile and send that to the server to see if the hash differs from what the server has for the revision it thinks you want.
is there a better way to fully clean the workspace from local files/changes and 100% match depot?
Depends? A complete delete and then force sync of the workspace could be faster depending on the size of the workspace.
Currently 1tb, so I guess I'll let the reconcile run until morning for now
anyway, thanks again π
Just finished setting stuff up, p4 print backed by p4 describe works flawlessly, better than expected.
Hello. I am in a company with three fellow students and we are planning to do a diploma project on UE4, but we cannot figure out how to use Git, can you suggest a guide designed for people who have not seen UE4 before?)
Microsoft Azure DevOps
check the guide that pinned in #ue5-general
you want to collab with people and don't know where to start?
So I see there is a new version of P4D (Helix server) for windows. (lmao ok don't laugh I run it on windows). I run the installer to upgrade the server, but it says helix server can't launch. So I uninstall, install the old version, and everything works fine. Is there some special procedure I need to do to upgrade the helix server binaries?
I tend to adhere to the "if it ain't broke don't fix it" in areas like this, unless there is a pressing need : E
Yeah I quickly went back to the old version and for the time being I am not bothered. Just curious tho if this is a me thing or a p4 thing
basically yea... im trying something out right now but i have no idea if its going to work or not haha
Sometimes a p4d upgrade requires dB upgrade via command line step before it will run. It usually tells you what to do when you try and run it, and prints it to the log.
interesting thank you. I was doing everything from the windows installer so I only got a message about contacting p4 support lmao... I was wondering if having no license was causing issues
Shouldn't do...
yea VC is the right thing for you then
Aha alrighty im gonna look into that
Right now Iβm using GitHub and SourceTree and Iβm gonna see how that works
Just gotta finish setting it up
Hi, anyone have experience with Anchorpoint? I can't share access with a friend. He just can't see my timeline even though I gave him admin rights
hi all, i'm interested in trying out Perforce but there aren't as many nice modern tutorials as Git or Github. I can obviously just stick to the official documentation, but if anyone has more visual guides I'd greatly appreciate it!
It fits Unreal dev so much better than git, I recommend just biting the bullet and going with it despite lack of tuts
Any P4 Server admins present?
Trying to issue some p4 .... commands to my server, and getting the following error no matter what I do (wth the exception of p4 set)
Connect to server failed; check $P4PORT
connect 127.0.0.1:1666: connection refused```
If I do P4 set.. I can see the port IS set:
P4PORT=ssl:1666 (enviro)
P4USER=*hidden* (enviro)
P4_ssl:1666_CHARSET=none (enviro)```
Anything I'm missing?
Silly questions:
Is the server/daemon definitely running?
Is the server local/same host as where you are running these?
Is it from Unreal side and just not working while you trying to login p4v?
Yeah this is me trying to run the command on the host machine. I've stopped the service with p4dctl
This is the Server itself, not within UE
I'll suspect not getting the environment parameters working. Did you set to use env or not?
The error message you are seeing implies the server should be running though. What's the command you are trying to run?
Ultimately I want to run P4 verify, but I can't run any commands other than p4 set currently
Yeah you need to start the server to run those other commands
Honestly I don't remember, I set this server up like 2.5 years ago
It's trying to connect to the server port
I started the service, still can't login
Same error?
Same problem
There might be something else going off here, the server is set to use SSL but it doesn't look like it's trying to use SSL to connect
127.0.0.1666 - no SSL prefix
but P4PORT is set to SSL... P4PORT=ssl:1666 (enviro)
Yeah I don't use SSL so I can't confirm that
I do want clients to use SSL, not that it's exactly crucial
Mind you, I can't seem to change it with p4 set
How do I change it to NOT use the enviro var?
I don't remember the command but you can change it in the P4 client
According to the docs the p4port should be in the format of SSL:host:port. Maybe change that to explicitly ssl:127.0.0.1:1666 to test
I can't change it at all atm. I think if you set 127.0.0.1 it blocks outside connections
Can't see anyway to change the var in the P4 Client or P4 Admin
Managed to change it by editing .p4enviro directly. Sadly doesn't make a difference π¦
This looks like my issue..
https://portal.perforce.com/s/article/2471
I haven't been able to test it out yet but it looks like the issue is that the server is litening specifically on the ssl:my.pub.lic.ip:1666 - which blocks internal connections on the host machine
I might have to reconfigure it using p4d a bit
Oh, so can you just change the listen server address to 0.0.0.0?
I think I just have to outright remove it and just specify ssl::1666, allowing connections from anywhere
I can actually run p4 info from the CLI on my client machine, so I think this is promising
Hi there. A simple question, since I'm a little out of the loop. What's the best free option to host a repo for UE currently? The last time I checked gitlab had considerably more storage space for LFS thank github but that was a good few years ago, now that I checked I think the situation may have changed? Is github the way to go currently?
Also, I'm not limiting the possibilities to git, but as far as I know both Plastic SCM and Perforce require some investment for a server.
I hear azure DevOps is free and unlimited, but I can't imagine that'll last forever
Still, worth checking out. Thank you.
Hey anybody know how to get Perforce's p4ignore to properly ignore Makefile's? I've tried everything I could find online but sadly none of it works. Any suggestions?
Yeah the only free limit is 5 users per workspace I think. I also think it has a size limit, but like 250GB? I'm not sure... GitLab is 5GB I think, with also a 5 users limit? Anyway, Azure DevOps seems to be the only viable free solution left, but for how long nobody knows.
I was reading through some technicalities of Azure and so far besides the 5 person limit (which is fine for my hobby project :D) I've found there's a limit for LFS files, which is still like 50GB max file size? More than enough.
So yeah, sounds like the best option so far.
You should also be able to specify the hostname of the computer the server is on. Like, a windows PC has a name, you can just say <computername>:1666 and that will listen on any IP, both v4 and v6, that the computer has
But, yes, the default is to just specify the port and it will listen on all IP
Hello, one question, is there a system in which I can work on the same project with different developers at the same time?
I tried github but the problem is that I can't work on the same bp with other people because they are binary files and they get overwritten
I tried with Perforce but the performance was terrible
Is there any solution to this?
Thank you
No. Thats what checkouts are meant to avoid. It locks the file on source control so others don't accidentally modify it as well. The solution to this problem is more of an architectural one. Making things modular and split up logically into components and actors without also turning it into a web of tangled mess.
Tangled mess is the best mess!
technically multi user but it's a terrible idea
That's only for level editing anyway I thought? Not bps?
Hello , do someone know a better source control than GitHub that is free for 2 people with plenty of storage and big file transfer limit
Me and my friend are struggling with github capacity and max push size
And I can't push because its too big again it says network disconnected
It isn't even that big
I push from github desktop
Has anyone successfully integrated SVN with JB rider? π€ I've connected rider to the repo but for some reason files are not checked out on edit, and the changes list is empty, however tortoise svn in windows explorer shows me actual changes
hmm it seems my SVN options are actually disabled. what could have i done wrong here?
hello i was experimenting with perforce and i've created a stream depot which i am trying to delete, i am told that i can't delete because there are streams associated with the repo, problem is p4 streams shows i have no streams and i've deleted them all
wow this sucks, i don't seem to be able to delete a depot after creating a stream and then deleting the stream
do people really have lots of test depots laying around
No, you apparently still have a stream or potentially other things associated with that depot.
i've deleted the streams p4 streams shows me nothing, but if i view deleted streams i can still see it
ah i need to obliterate it
delete doesn't mean delete
Doesn't mean that in any source control.
I don't wanna download UE5. but integrated some of the feature of ue5 into UE4 4.27 . Like virtual shadow maps,etc.
I know it's possible to do it
But how shall I approch this ?
Why do you want to do this? If you "know" it's possible you should already know how to approach it.
You should just update to 5, it's not as big a leap as it sounds.
Also, how is this a source control question?
When using P4V, I'm constantly getting "Can't clobber writable file blahblahblah.blah" Is there any way to make P4V just overwrite this file anyhow? It keeps making things read only and then won't write over it afterwards, and I'm getting really super tired of manually turning off read only.
Or in this case it didn't make that file read only but won't overwrite it.
But I've turned read only on a few times on these files. Mostly dll files for plugins.
Why are your dll files in perforce? either they shouldn't be, or you should be checking them out and then submitting them (if you're using that as a method of distributing pre-built binaries), or they're dlls that you shouldn't be rebuilding. Are those the only types of files you're getting the warning about?
In any case you shouldn't be getting that sort of warning unless you actively made a file locally writable (like when editing a blueprint). You definitely shouldn't be getting it constantly.
They're UE4Editor-PluginName.dll files from plugin binaries. I think they're committed for designers. I have no idea. I don't manage the source control. Just have to work with it.
Then you should really be talking to whoever does manage your source control instead of rando's on the internet. There are too many variables with regard to setup to consider here and it sounds like they've just set it up in a way that only works for one type of workflow. which is bad and they should fix it, not you.
Are you a solo dev? Where are you getting your server?
I don't wanna update it to five. i want some of the 5 feature . but not all the stuff that come with it.
That's not really how it works. If you want 5 features you should upgrade to 5.
At one point we tried back-porting Game Features from 4.27 to 4.26 because of a release date and even that isolated of a feature didn't actually work entirely correctly.
The features you want are possibly only available because of features you don't think you want.
No, we have a paid thing from Assembla. Unreal docs have instructions on setting up a local server for solo dev though.
You should not have binaries under versioning. Ignore all Binaries and Intermediate folders, even in Plugins.
It is possible to take small individual changes from higher engine versions to lower engine versions ( I have a couple in my source fork, like the specular shader fix for GLES31 from 5.2 to 5.1.1 ) but generally speaking trying to do it for any complex feature is unlikely to be feasible.
you dont really have to enable everything in 5, its a progressive update, most of the new features are isolated in plugins. the core work is all the rendering/platform tech necessary for features like VSM. nanite, lumen, etc are all optional.
VSM is way too hard to integrate into UE4
I get it thank you Guys for straightening me out. @wide raven @quaint obsidian 
Well lets say you have a feature that you are no going to use and want to shutitdown in visual studio building(or compiling) process?is that possible( or should I just disable the plugins and they will not compile )
Anything that has BP nodes in your blueprints can be a bit of a hassle. Disable the plugin sure, but any nodes you have from that plugin will then be broken. But in general yes, disable stuff you don't want.
Btw I am talking about c++
I mean since I mention visual studio i don't have to say it haha
I believe you can exclude stuff from build process yes
Will try .
That said, once you've built the source project once, it shouldn't have to be fully rebuilt again, thus the savings might be minimal compared to the process of excluding / including again when needed
Well for some reason whenever I build a unreal project through IDE the whole source build itself.rather than just the project. AND i do use Build Project Only
Is it normal?
that sounds unusual, I am sure my project doesn't build whole source every time. You sure you have your game selected, not ue project?
Game selected u mean in startup project my game project selected?if that it is then yes
Mmm I mean the Configuration, I use Rider so not sure what it is in VStudio
Like <gamename>, <Development Editor|Win64>
Leeme check i will report you if I find anything unusual
@wide raven wonder this stuff can pose a problem
Hello again, I am thinking about creating some plugins to make my life easier moving between projects, i am using perforce, how can i create a plugin and share it like i might with a git submodule?
You are opening your GameName.sln, right? I am not at the office now, so hard to compare
yup
I think you might be better served asking the question in #engine-source , I can't compare my project from home
ok
Hi, how would you set up a team work system for people from multiple country, 4 artists
what does multiple countries have to do with it?
I understand it as "multiple countries instead of multiple people in a single office" so it might lean toward a setup in the cloud vs on premise
even that can be overcome by a vpn or a DMZ
my friend connects to my perforce server running on my home broadband
Yes, it's possible, probably even the simplest to start with Perforce
My wording is that it might be better to use the cloud, so the network might be better and more stable, same for the electricity in the building etc, (and so that there is no need for someone to restart the hardware)
For artists, in this situation I would recommend to use Plastic Cloud (now Unity DevOps) (with Plastic SCM, now Unity Version Control) since it requires no IT beyond the initial registration and all related administrative & billing boring setup.
(disclaimer: I am working at Unity)
Yes I am, and yes they did.
well UE i guess works best with perforce so stick with that @neat flax
I have been working with people at Epic Games since then, to improve the support in Unreal Engine,
and also improve Source Control in the Unreal Editor as well
fair enough
version control sucks
git would be awesome
but can it handle binary files...
hello i have a problem when pushing 300+ changed files to devops with github desktop
perforce, i don't think can do sub depots like git
the first commit i pushed 1000+ files no problem
and now when i want to push 300+ it says network disconected
i used to have problems with git, then i used perforce
binary files + git = π’
repos 2gb+ + git = π’
(wait wait wait, collision of discussions)
Yes Yes yes I am all with you here
perforce needs a server and 5 free users
can i use perforce with devops
devops is a philosophy
can u send me a good tutorial for setting up perforce for ue5
i am so mean
so google is failing me on the question is how to manage plugins over multiple projects with perforce
so <project>/Plugins/<shared plugins>
with git you create a sub module, or one of the many other sub project offerings depending , perforce must have something similar by a different name?
its been suggested to use git but i will have a large repo of content
so git will break
this must be a really common problem
You can 'import' separate paths into a stream if that's what you really want, but I'd argue that generally you don't want that.
Better to 'integrate' from a shared depot location to each project that needs it, that way each project is in control of when they update the plug in.
can you tell UE to look for plugins outside of the source tree?
right now my workspace looks like <WS>/<depot>/<UE_projects>/Plugins/<Plugins> could Plugins be <WS>/<depot> ?
where the depot is my plugin?
this works for me
ok integrate sounds good, what is the process for this?
helix core is so strange
can i use something else
i cant setup helix
my localhost is locked
and github is trash for large files
as @reef oriole said earlier (#source-control message), Plastic is probably the easiest to get working decently, although integration in engine is not up to the same standard as some other options.
Or you have to use a git provider that allows LFS, or switch to Perforce.
Unfortunately there's no easy solution for Unreal source control.
i tried perforce
i cnat acces my localhost
and cant find any good videos explaining how to get my friend to have the files
and i used azure devops with github desktop and the first time i pushed 7gbs of files and now i cant even push 300mb it says network disconnected
like I said, no easy solution
but i pushed 7gb with github desktop the first time
idk why i cant push big files now
I don't really know git tbh, but I know it's not really usable without using LFS
don't use git even with lfs
unless you hate yourself
git was not designed for big projects, it was not designed for binary files
i converted to perforce
its not perfect is perforce
but it works
and that is more than i can say for using git
There's a big barrier to entry with Perforce though, sys admin skills required.
Gotta have someone technical on the team to get this setup.
i read the instructions on perforce on the perforce website
oh
why are you even trying to access an http site on your computer?
perforce isn't an http service
@cyan jay what version of Unreal Engine are you using currently? And what version of the PlasticSCM plugin, the one provided by EpicGames or the one we release on Github, always more up to date?
(with more bugs π)
is it a good idea to ignore the .sln?
best person to work with!
Yes, the paths change on each computer and it's regenerated in seconds
I thought as much that its generated, then someone submitted it saying it had to be
Naa, as a minimum intermediate and .sln should be ignored
Person might just be confused cos their gui was showing to submit it
I backed up a project on github but I suppose I may have backed it up incorrectly or I'm not properly cloning?
When I clone a local copy, it replaced my .uproject with gitLFS info, how do I have it pull the actual content?
Hi, I have a noob question, now Im starting to use source control. In ue5 with git source control, where is the sync option ? or what's its altenative ?
I want to revent on changes that I have made but cant do that
Also I dont know if this is part of the problem, but I cant check out modified files in unreal engine
In gitHub Descktop I can see the history and can push the changes I do, but cant revert if I want to
How do I go about it, does somebody know ?
can someone help me setup my project source control with perforce and azure devops ( i will pay)
because all of the people i find use chatgpt to generate instructions
Hi, we are having issues syncing binaries after setting up Unreal Game Sync (UGS) for our Perforce stream following this tutorial series: https://www.youtube.com/watch?v=rfz_IVpdvfI&list=PLQ2qTk3UW1pz-Kho7bFV_0cNwvv_jE-5c&index=7
It appears we get an issue where the sync of binaries is greyed out for us...
Hi all, does anyone know if it's possible to create branches with Plastic where you don't need to duplicate the trunk entirely?
I will pay for someone to teach me how to set up source control and how I can collaborate with another person. I'm an artist I don't know anything about this repository stuff
if someone is interested please dm me
Which source control solution are you going for?
I've been using TortoiseSVN but I hate it. Branching is so unintuitive
It was a while ago tbh but when I meant was that for example the .uproject instead of showing the normal example {Name:} information it showed something like https :/ githublink/lfs/project.urproject - sorry paraphrasing i have to try to re-clone it
Luckily I found a copy of the project. I think I'm just going to set it up on azure so I don't have to deal with external lfs support. Not sure what I would have done to have it pull the files but not replace the data back
Lfs also limits file history, I think?
Which is great when dealing with binary assets...
Is plastic easy to use with ue5?
I have seen it been used a lot in unity
Because Unity own it now.
If it's greyed out then that means the depot path for the binaries set in UnrealGameSync.ini is invalid
If the menu option isn't disabled but all CLs are greyed out then that means there's isn't a build compatible with that CL
Thanks! I'll check that
has anyone seen an error like this before?
Error in client specification.
Mapping '//WildHuntGMS/...' is not under '//arok/...'.
i've delete the depot of WildHuntGMS
I have GitHub setup as source control and it's working fine locally but whenever I try to publish it, it takes a long time to compress, then after it starts writing it times out. I've looked online and people said I should use a diff branch and then merge it into the master, but it still does the same thing. Some people mentioned things like ISP/firewall limiting traffic or because of no LFS, but it didn't seem like that helped anyone. Any ideas on how to stop it from timing out?
The best way is to turn the verbose logging and see where it get's stuck ... however if you are using http to push a likely scenario is that some of the configuration settings for http buffers are too low. One possible fix is git config http.postBuffer 52428800 (Changing the buffer size to be even bigger is also possible fix if you have lots of local memory. IIRC mine is 1048000000 or similar. )
If that does not fix it then inspect verbose log of git push and you will see where it get's stuck ... and that may help diagnose further.
HTH
fixed it, some files were excluded and causing a weird issue as i was refactoring
Good dayto everyone. Please is there anyone able to help with installation perforce helix to our private VPS ?
we want to use this VPS as our own server for 4 local PCs
please DM iam also willing to pay for usable help
Time to ask a complicated question:
What exactly is the relationship between release and ue5-main? Would it be possible to switch a fork of one to the other via a rebase or merge?
I appear to have forgotten about git rebase --onto, that seems to solve that nicely if I ever run into it
resending again : ) Good dayto everyone. Please is there anyone able to help with installation perforce helix to our private VPS ?
we want to use this VPS as our own server for 4 local PCs
please DM iam also willing to pay for usable help
@undone grove can't you simply follow the tutorials?
Hello, I am trying to send my UE5.2 engine build to perforce, but it seems to get stuck after a certain number of files
i've checked the network traffic and its not uploading anything and the server is idle
sorry also p4
cant you simply follow tutorials ?
there are no tutorials for this, but there are for installing the software
dont you think that thats the reason why iam asking for help ? seems like you have the same issue that its pushing files to nowwhere .
give yourself plenty of diskspace under /opt
This is what we have done. we have a problem to connect to virtual server which is located in germany
this is what you said, now you have a network issue, sorry i can't help
you cant read bro. We literally need someone capable to install correctly remote server and you is speaking about local P4
seems all i needed with a bigger buffer
well today i learned trying to put your build of ue on perforce is just pain and suffering
I dm'd you
sry, I saw this late. I was just using the UI in Github for Desktop. Should I be doing this from an IDE?
I am not sure exactly how Github for desktop works but git config http.postBuffer 52428800 should be run from the command line. (I also tend to do large pushes from the command line). You may be able to just change into the directory that contains the git binaries and run it directly. GL
if you create a worktree from a repo, and you delete the original repo, is the worktree fucked?
I guess it would?
I just realized how invasive this OneDrive pos is, I think it might be what's causing my source control issues, because somehow my Unreal projects are all sitting in Microsoft's cloud instead of my machine, when I have plenty of space, like wtf...
Hey dear developers, I have a question that I "get Lastest" from p4v(perforce) and open the porject then the editor basic map name show as NewMap. Does anyone experience this happen and solve the problem?
That's controlled through DefaultEngine.ini.
[/Script/EngineSettings.GameMapsSettings]
EditorStartupMap=<MapPath>
If you configured that locally it could be overwritten when syncing from source control.
If there's a map that should be the default for everyone you could change and checkin the ini.
Or you could check it out, never submit it so that you have to merge any changes so that you could keep your custom startup map.
There might be a user setting override for this value, but I've never found it.
Anyone tried using Scalar instead of git-lfs or perforce for version control?
Now seemingly comes packaged with git
Hi! I'm building a new version control system for game development that's open source called Jamsync (https://jamsync.dev). Would love to get y'alls thoughts on this and where you think I can improve version control for game developers currently. Feel free to check out https://jamsync.dev for the hosted version or https://github.com/zdgeier/jamsync for the source code. Are there any specific pain points that Unreal developers face from current version control systems?
@valid cloud I haven't used Scalar but I would assume that this only solves the scaling issues Git has with a large number of files. Things like versioning large binaries and file locking are not supported compared to Perforce.
@grizzled whale very cool! Would you say it's production ready??
Thanks! Unfortunately not yet, feel free to join the discord https://discord.gg/6bK3GPKhpa to follow updates. It's more in a "demo" state right now. Probably will be production ready in the next month or two.
Kudos to you for stepping up to the plate and trying to offer a solution to painstaking (and costly!!) tasks for SVC! I'd be more than happy to bounce ideas off of - will definitely join your discord and keep an eye on your project.
SPECIFIC PAIN POINTS:
Cost for sure! But you aim to already take care of that. Make sure you put up a donation platform - something of this nature deserves any such monetary rewards that anyone feels to donate!
GUI - Tortoise SVN is pretty bad at a new user onboarding & understanding functionality for SVC systems.... You already look to be encompassing a GIT workflow strategy to your systems - badass! Document the process after you nail down feature sets and make ssure to do videos to help out your community!
GUI - Perforce has a really nice setup for its GUI but ALOT of buttons/embedded functionality that isnt so clear to define... and their documentation is piss poor for someone newer to SVC. Again - documentation is key - and explaining it in SVC FOR DUMMIES language is key to success!
FEATURES TO HAVE:
Locking out of files - Make certain that binary file types (.UASSET + any image file) enompasses an OS's READ ONLY attribute set when files are checked out. I would sync this to server upon SAVE action - so others are notified when they attempt to save a file that someone has been working on.
.IGNORE - obviously a required asset here - allow for a custom file to be established much like .gitignore that encompasses the same functionality - ignoring entire directories(AND SUBCONTENTS), wildcards (filenames & extensions too), and also whitelisting specific files to include wildcard whitelisting.
Again - KUDOS!
Another pain point I forgot to mention is the technology behind PERFORCE's STREAMS ... dont even fully understand it.... But I think you're already onto things with your project:
Branches (We call em FeatureBranching in AppDev world - same technology tho). I would definitely encompass this function!
Hi @scarlet solar ! Thanks for these thoughts! Will definitely keep these in mind. Yeah documentation is pretty lacking right now, that will definitely be top priority after I finish out the core features. Just curious, do you know what is painful about Perforce Streams (or is it that they're just complicated)? I've heard a couple people complain about them but I'm still not sure what is annoying about them since I haven't used Perforce extensively.
We should definitely keep in touch! Would love to have people beta test and get feedback/request features!
you can for sure sign me up for beta testing - i joined your server!
STREAMS - there's lacking documentation/instruction on what they are ... and i'm more of an advanced Java developer ... i get that theyre basically FEATURE BRANCHES - but the implementation and day-to-day use of them as developers is convex ... complicated to say the least and leave it still pro-bono for Perforce to not be offended by....
I love the fact that you are looking to stay on board with GIT workflows - thats the best approach in my opinion. I know GUI is hard to develop... i'd be interested to offer some insite on design/flows ... and for sure hit me up for beta testing!
I would also mention that one of the most important aspects for any unreal-specific workflow considerations is an actual plugin for the editor. Unreal assets are binary and must be locked for any team larger than a few people. Having to use a separate GUI to checkout files is a horrible workflow and would likely be an instant no-go for many teams - the editor needs to be able to checkout files on its own for most file operations to work smoothly.
Having a separate GUI is definitely important (arguably more important than any engine-specific integrations as a general VCS), but you really need both for unreal.
And ofc you need a GUI at all if you're going to support more than just engineers. Most artists aren't going to learn a command line tool.
def true!
no matter what documentation you provide - theyre SANS common smarts when it comes to anything script based lol
Looks interesting. 2 thoughts/questions:
-
I noticed it seems very server based. Is there an option for no server for smaller projects? Like SVN and GIT can be used just locally.
-
You speak of using RSync style deltas, and it seems to describe forward moving deltas. This would mean anyone checking out the latest would need the server to reconstruct the latest all the time. I've heard of other systems having reverse direction deltas, so they'd reconstruct older ones, the ones least likely to be fetched. Is this posing a scaling problem? Do you cache the newer fully constructed files?
π yeah great thoughts, I think there will have to be both in-editor support and a separate UI. I haven't done internal Unreal Engine dev before so I might start with an external UI first and then build out the UE functionality. Although it would be cool to have first-class support for UE dev though.
fwiw the source control api in unreal isn't super complex - will probably involve copying one of epic's plugins and then adapting it to run your commands.
I can't say that I'll be moving to a new VCS any time soon but I certainly wish you good luck.
We really do need more options in the space.
Hi, I have a whacky issue that I don't expect anyone to be able to help with but here goes.
I had an install of Perforce on my D: drive. However when I reinstalled Windows it broke my server and it won't start.
P4D just hangs with "Perforce server starting..." in the command line.
I know p4 zip exists to move depots between servers but it requires it to be running so I can't use that.
Can anyone suggest a solution for this? I've tried re-installing a new version but obviously it doesn't recognise the previous version.
Thanks for any help.
have you heard of windows file history?
no i use dropbox thanks
yeah, i'm somewhat the same. it's a chicken and egg, you want one to help flesh out the ecosystem and options, but you also want it to be somewhat mature. Nothing worse than the fear of a corrupted repo
but, it'll never mature if it doesn't start
Realistically the way it'd happen is if some mid sized studio decided they wanted to build something for themselves and then made it public. Unfortunately most studios already use perforce or somehow deal with git's problems.
Yep. P4 is "expensive", but in terms of studio time and dev hours, it's cheap as chips. Building a new solution is not cheap or quick
Hell, even GVFS and scalar... microsoft said "we don't want to develop our own internal VCS anymore" and just used git lol
even if it took rewriting a ton of stuff, still easier than doing something from scratch
GVFS/Scalar solve different problems from perforce though. The windows depot is a bit of a unique repo.
| I noticed it seems very server based. Is there an option for no server for smaller projects? Like SVN and GIT can be used just locally.
Yeah this will probably come later, this complicates implementation a little bit so it's easier to just come back to this later for people who want to work offline
| You speak of using RSync style deltas, and it seems to describe forward moving deltas. ...
So a little bit of the Rsync style delta in that description is a little old. I'm no longer using forward/backward moving deltas. Basically Jamsync now uses chunks that are hashed and reused in newer files. I just store a pointer to where the chunks are so there's no caching necessary when regenerating the file. When storing a new file, I check to see which chunks have changed and the location of those chunks.
. I just store a pointer to where the chunks are so there's no caching necessary when regenerating the file. When storing a new file, I check to see which chunks have changed and the location of those chunks.
Awesome. I had a deployment system that did this once. Worked great! quick, but got reasonable savings.
Yeah this will probably come later, this complicates implementation a little bit so it's easier to just come back to this later for people who want to work offline
Yeah that's fair. Can't do everything at once. It's good that its on the roadmap. That's one of the bigger hurdles i see with newcomers to version control at the moment. Everything for large files (except SVN) requires servers, so it's a mountain to climb for people to even begin exploring.
Yeah part of the plan is to manage the hosting for people so they can have easy free storage for small projects and large studios will pay for managed hosting for larger games. But having history/cached files locally will definitely be faster in many cases.
Anyway, excited for new options! I wish you luck, and i'll definitely be following for progress
Thanks! π
Sorry to repost a question but I asked in the middle of a conversation so I guess it was missed.
I had my perforce install on D: drive. I reinstalled windows but all my OS environment variables and such mean I can't start up my p4 service. Does anyone know if I can restore this so I can start up my perforce server from D: again? Thanks
Are the permissions on that folder correct for the new system/user? the user and system UID's will change with a windows reinstall so the permissions may need to be reset on that folder
I've no idea in all honesty. The last time I installed a p4 server was in 2016 and I barely had to do any admin on it
I was going to try install a fresh version and try backup from my old folder somehow but I guess I need permissions for that also
right click the folder and go to the security tab
make sure all the names are proper and that permissions list write access for whatever p4 is running as
yeah this is where it might get tricky. My old windows install I was using the local user but with Windows 11 I'm using the newer MIcrosoft login version so it's not the same
Considering I still have the files, is it possible to backup from that server without running it? I know that is probably not the case but I really don't want to lose this server
yeah for sure, first thing to do is take a complete copy of that folder
Hello, I am trying to stop the Binaries directory from being included when i hit add, in my .p4ignore i have /Binaries/ but for plugins they always get included. should i do something like /Bins/ ?
**/Bins/**
Could someone explain to me why DefaultEngine.ini refuses to update properly on source controls such as Perforce. I have checked out and pushed it near a million times now and the collision channel I made always resets whenever I restart the engine. What am I doing wrong? This is driving me absolutely nuts. π
What I currently do is I check out the file by clicking the yellow popup when going to project settings. Then I add the collision channel and push the file through Perforce. But as mentioned, this does not work. Because everytime I restart or pull, the file seems to get reset to a version that does not have the collision channel added.
I am not sure i can explain it, but i've had similar issues. don't take this the wrong way but did you try creating another workspace and seeing if you can submit and then get the latest version on the second workspace?
if only git worked with larger projects
That seems very unusual. Could you post the
[/Script/Engine.CollisionProfile]
area of your file, or where your changes are.
Maybe even show an image of the diff of the original and the change?
Plugins/*/Binaries/*```
Thanks
hey, I keep getting this when trying to push to Github origin. Connection to github.com closed by remote host.
send-pack: unexpected disconnect while reading sideband packet
Compressing objects: 100% (762/762), done.
fatal: sha1 file '<stdout>' write error: Broken pipe
fatal: the remote end hung up unexpectedly
I tried both https and SSH with similar result (with an error 500 on the https side). Fails halfway through write. I don't have LFS, would this be because of the 12.4GB in megascans it's trying to push? π
also tried increasing buffer size. I might try rebasing without the megascans
I don't have LFS
that'd be it
GitHub blocks files larger than 100 MB.
Makes sense, Iβll get myself set up on LFS thanks
Hey guys - we arent able to see our asset and I was wondering if it was caused by our git ignore? This is his folder and mine
Question for you folks: How do people in the industry generally do code review with a perforce server? I'm used to using something like gitlab merge requests and github pull requests for regular software engineering work. Is helix swarm the go-to? Is there anyway to do a blueprint diff other than using the unreal editor? Thank you!
I'm currently setting up a Perforce server and currently looking into the type map for UE5.
I've looked for a temple online and can only find a template in Epic's own documentation but that seems to be for UE4... is it ok to use the type map for UE4?
https://docs.unrealengine.com/5.0/en-US/using-perforce-as-source-control-for-unreal-engine/
should be fine i think. i can dm you the one that works for me if you want too
That would be great if you could!
Hey, I've deleted a metahuman folder from my project, as I no longer needed it. But git/UE is apparently still trying to reach the deleted file locations. It's spamming my entire output log on the startup, but besides that everything works fine. Does anybody know how I can get rid of those references?
Did you delete them from your source control?
I've committed every change to Git, if that's the questions, I thought everything else should happen automatically
Did you add it to a commit and push the commit?
That is, add the deletion to a commit.
Hello, one question, how do those who work as a team work with a common blueprint among all of them, for example the Basecharacter?
We are 4, the Basecharacter is used a lot and that generates a conflict in the merge because they are different versions of binary files and cannot be merged together
What do you recommend in these cases?
exclusive checkout
Ye what sswires said. If you use perforce (some other support this but I don't know which ones.. Not git) you check out the files you need to edit. In the case of unreal engine, the editor will not allow other people to check out binaries that are already checked out so you have that safety net where you don't need to worry about clobbering. I might have my p4 set up incorrectly but you can override this by manually checking the file out through p4v. In the end it comes down to communication with the team about who needs what files, and a workflow that allows you to skirt being locked out of files you need, like creating temporary folders for feature implementations that get manually merged into the main project later on? Idk ive never been in that position and I'm literally brand new
What is this?
Thanks you
Basically what I described where someone checks out a binary file like map or bp or whatever and noone else can check it out it it warns about it already being checked out.
Yes
I think the issue is I edit a base asset I made with the modeling tool in UE5 then deleted the original - then pushed to git...
Quick question - i've brought on a friend into my project ... and thought that I could just share out .uproject, Config/Content/Plugins/Source directories... but on his end when he generates project files, and attempts to build he's getting a problem with IPAddressSteam.h - which is from steam OSS plugin....
Is he able to use Launcher version of the editor - or does he also need source build? I've read up on this topic alot and have had success in the past - but this is the first time that i've started with steam OSS & encountered this problem right away now :/
If your source build has changes you will need to provide your friend the source so they can build it, or provide them with binaries for your custom source build (preferably with UGS or some CI/CD shenanigans). If your source build does not have changes then they just need to right click on the uproject and move the version to the launcher version that matches your source one (eg 5.2)
Shorter version is if you didn't change anything in the engine code, he can use official version downloaded from Epic Game Launcher. You can share the game project binaries to him even without source code after you compiled if he doesn't need coding. Any plugin you added in the project, y ou need to build it with official engine and share the binaries to your friend.
Here's the longer version
https://docs.unrealengine.com/5.1/en-US/using-an-installed-build-of-unreal-engine/
thats what i thought.... for whatever reason though he's getting a header file issue with that IPAddressSteam file... which i copied over from engine source, and put into the plugins via documentation :/
i never had to have artists on source build before - but i also never used steam in a project... i thought maybe it landlocked you into source engine builds only :/
hi guys, I'm making a plugin and i'm saving it on a github repo, is there a way to use the plugin in another project and be able to update it every time I make changes to the original?
I'm new to using github so I don't really understand everything
If you are also traking your main project on github you could add the plugin as a git submodule into your main project
Anyone using Perforce have it lock up the application when trying to submit the Engine?
I left it going overnight to see if it would do anything but it broke
Hi did anyone by chance have a problem with the new Input System and git? It seems my IA_'s don't get pushed/pulled
odd, check your .gitignore maybe?
Wow...
..why are you even talking to him?
i wanted to help him with cpp
but he just wants to do everything his way so im just gonna leave
gonna do it too
It's a shame you can't block friend requests, too.
Heya just a quick rookie question, just wanted to ask what does UGS do when its archiving, whenever i do a sync it takes like 10 secs to sync the files and like archiving takes like and hour, is there something i can do to change it? i tried poking around and i cant find much haha.. im not really a tech guy, i handle more with purely animating.
Hello, wich is the cause of this error? thanks in advance
nope, nothing about IA's nor the folder they are in, searched for Data Assets not getting pushed on the web, nothing appeared, did I configure something wrong? I have all .uassets in LFS, might that be the problem?
weird, since I have all the IA's (duh, I created them), UE Revision Control detected them, says they are up to date after push, then my colleague pulls and everything is there besides the IA's
even the connection to the IA on the BPs and its position in the IMC, but the IA in itself is missing
I want to update my project from 4.26 to 5.2 - but I want to test it so I am making a copy of it - what directors need to be flagged as "writable" in order to do this? Once I load it up and test my main system, I'll make a backup again and then convert-inplace the original, after checking out all files (then I will revert unchanged ones) - my understanding is the bulk of the assets won't be change, though I'm not sure how true that is because i know you can't send a usasset backwards -
None, the uproject is the only thing that gets touched.
Anything else that needs changing for a successful upgrade will need manual intervention anyway.
Literally, only the Uproject?
lol I copied over a 200 gb project just bercause I wasn't sure
if you have source control I'm not sure why it matters anyway
if it touches anything else just revert
Will I be able to see blueprint changes in the revision graph in UE? I don't see why not, based on what you said
upgrading doesn't touch assets
unless you purposefully go in and resave them yourself
upgrading really only changes the version referenced in the uproject. That's it. It then tries to generate project files and may or may not succeed depending on whether you need to manually update some build/target.cs stuff.
I got a bunch of VS when I tried to build the solution
yes, you will have to manually fix any new compile errors that come with the update
the engine can't magically fix errors in your code
Any p4 gurus around that have used p4 with ugs
maybe, depends on the issue
i have an engine downloaded from perforce (epic's perfoce)
and i need to make sure i can always integrate this into our projects engine
so if we update the engine, we can do merge tests etc
another thing, atm we commit binaries to our projects depot directly, but this is causing issues where devs are having to commit there binaries when they compile, we want to avoid this
basically code devs will compile the engine, etc
So for the engine part, I've found streams to help with that the most. have a stream/depot that is the pristine version from Epic and then create a release stream from that which is a version that you can modify. Then you import that release version to the working stream for your project (you could even have a project specific release if you have multiple projects all doing unreal from the same p4 server).
They you can always apply the epic p4 state to the pristine stream and integrate down to your modified ones
artists should pull binaries done by our build machine
Once your build machine finishes building, it can zip all the artifacts (dlls, pdb, exes. etc) and commit that zip to perforce to a special place. I'm not sure if that "special place" is defined by UGS or can be specified by the project.
Then when an artist/whoever wants to sync to pre-built binaries, UGS pulls the appropriate zip from p4 and unpacks it.
Binaries are then excluded from source control entirely (there may be a few exceptions) and no one's checking those in manually.
Sorry if that's the info that you already have for how to set things up. I didn't directly setup our UGS configuration, I just know about this much about how it is setup.
The streams part I've done more directly with my p4 setup at home (so I can share some of that if needed). But there's no real point in trying to setup UGS for my hobby projects since I'm the only one working on them and I have no build machines.
Looks like the project's Build directory
Anything specific you want to know?
I setup UGS but we pull from Git not Epic p4d. We have a p4 branch just for the official engine.
To upgrade the engine, I pull from git to engine branch, then integrate from engine branch to dev branch.
I test manually at this point then submit to dev, but you could also have a staging branch perhaps if you want to submit and run tests on build machines (shelve would probably be unreliable for such a big change as an engine upgrade).
UGS makes it easy to upload/download minimal binaries for artists etc, otherwise submitting Binaries folder from build machine and excluding on programmer streams might be an option, but I've never tried it with source engine build. Used to use this approach when we used Installed build tho, but UGS was surprisingly straightforward to setup.
Integrate it, which allows us to modify the engine in our dev branch.
We mainly use source engine for dedicated server, but we have a few minor changes too. Usually integration is able to auto resolve with no problem.
we have a few client related changes also
so do you have a seperate depot for the engine
(sorry for questions, coming from Plastic SCM, so not fully up to scratch with perforce yet)
No problem! It's in the same depot for us, but I suppose there's nothing stopping you from having the clean Epic p4 version stored in a separate depot.
Then use a branch mapping to integrate from the engine depot into your project
well the idea was to keep the engine seperate
cause we have 2 projects in flights
using the same engine
one thing im getting right now importing the engine is its stopping about 2000 files in, and just doesn't want to continue
you still want each project to be able to choose when they update their copy of the engine, so you still want to Integrate into each project imo.
If you want a shared copy of the engine with shared mods then having an Engine_depot with a Epic branch and Mod branch would work ok.
So to update you would go
- full copy/reconcile epic_p4 -> Engine_depot\Epic)
- integrate Engine_depot\Epic -> Engine_depot\Mod
- Integrate Engine_depot\Mod to ProjectA_depot\dev
What do you mean by "importing the engine" ?
submitting the engine to perforce
it just stops
my idea was to do our changes in the release branch and copy down to main
and have the pristine version merge upto main
but this might be a headache
this is what i mean
What is Interkaos branch?
idea was to do our changes in the top branch
and copy to main and merge up from pristine
and use Main our kinda staging
π€·
How would you upgrade the engine?
Update Epic branch, integrate to Main... then what? Main would be broken until you update Release, fix it and merge back to Main
Unless I'[m misunderstanding
well you would delete everything in pristine
and replace with the new version, then merge that upto main, and copy release down to main, and breanch to new version (5.3 release)
the copy might fuck things up though
cause iirc copy overrites..
FWIW this is our setup, where SB_Engine is clean Git engine version. This gets deleted, synced from Git then reconciled before committing to perforce.
Everyone works in SB_dev branch which also contains our engine mods.
Yeah I don't think you want to be copying.. how is Release branch engine changes compatible with 5.3 say?
i thought copy down would work though
if say you copied from 5.2 to main, then merged pristine up
it would work?
but devs are working in Main? Or Release?
ahh sorry ok
well i will play with it, and see if i need to change it up
but first need to find out why this is just locked up
I don't think there's any point in the Main branch in that case, it's just a copy of Epic ?
Yeah, I have struggled a lot with this. Did you set the recommended server cvars?
is your server windows or linux?
π ok let me dig up the things we had to do to fix it
- Disable autotune - there was an incompatibility with Linux server and some Windows clients
- This page has some useful tips (points 2 and 7) - https://get.assembla.com/how-to-maximize-perforce-performance-for-remote-development/
- Strangely I found the p4 client to be less reliable for large submits than p4v - I'd recommend trying p4v instead once you have the CL ready
YMMV of course π
If you have a proxy it might be worth bypassing that too, although I don't know if that actually helped in the end
I'd never heard of autotune, apparently it's a technology where two endpoints negotiate to get better network throughput, but seems kinda broken between Windows and Linux
disabling it is fine
p4 configure set net.autotune=0
ok
this was maybe 24 months ago I think I looked at this, possibly it's now improved idk?
doesn't seem to make a perf difference anyway so might as well disable it
Probably parallel submitting?
Some of the files are big too and take a long time to upload.
yeah
770Mbps tho! That's great
well thats to the server in germany lol
Even so, I've worked with onsite servers that didn't go that fast π
Have you tried the cli?`
It's like a million times better if you know what you're doing
To compare: A sync/clean with the cli takes me about 15m on this one repo and over an hour with p4v
I found p4 cli to be less reliable submitted large CLs with big binaries.
When it's frozen does the network usage drop to 0?
yeah
I think I got that a few times during submitting the first 5.0 engine. If you retry does it get further?
Didn't get anywhere with perforce support even though they had tons of logs from me.
And once I eventually got it submitted I wasn't able to reproduce the problem so the ticket got closed.
this is something that comes up in here once in a blue moon and i am certain there is a post from a couple years back of someone who had a fix for it :\
other than breaking up the submit into chunks
only thing i can find on a quick search is someone didn't have parallel sync properly enabled but that can't be it lol
I'm setting up Perforce as well. Is anyone running it with 10 Gb?
What do you mean 10Gb?
How big do you expect your project to grow to?
I wouldn't start a project on less than 100Gb VM unless you know for sure it's going to be small.
10Gb network, sorry.
I want to use UGS to distribute, so putting the Engine on Perforce is at least 200 GB (I think). I just wondering if using 1Gb/s network will be a bottleneck.
Then the project will grow with DCC
How many users?
In my experience Perforce seems to have bottlenecks other than NIC bandwidth, but if you have a lot of users, 10Gb to switch would be worth having.
Same for DCC.
Small team less than 10
Thats what I'm starting to realize, Perforce isn't very optimized so tuning will probably be the first thing I do.
The thing I want to make sure works the best is Multi User Editing.
Hello, I am having this problem when pushing, I already configured the httpPostBuffer but it is not the solution to the problem, does anyone suggest something? thank you
git -c diff.mnemonicprefix=false -c core.quotepath=false --no-optional-locks push -v --tags origin main:main
Pushing to https://github.com/zelcar/secretforest
Uploading LFS objects: 100% (16282/16282), 29 GB | 0 B/s, done.
POST git-receive-pack (chunked)
error: unable to rewind rpc post data - try increasing http.postBuffer
error: RPC failed; curl 65 ioctl callback returned error 2
send-pack: unexpected disconnect while reading sideband packet
fatal: the remote end hung up unexpectedly
Everything up-to-date
Completed with errors, see above.
Anyone can recommend a good tutorial on how to use Perforce from the command prompt instead of the P4V interface?
Reading local file list from C:\Kaos\Engine\Saved\BuildGraph\Compile Tools Win64\Tag-Compile Tools Win64.xml
Reading local file list from C:\Kaos\Engine\Saved\BuildGraph\Compile Tools Win64\Tag-ToolBinaries.xml
Reading local file list from C:\Kaos\Engine\Saved\BuildGraph\Update Version Files\Tag-Update Version Files.xml
Reading shared manifest from C:\Kaos\Engine\Saved\BuildGraph\Compile Tools Win64\Manifest-ToolBinaries.xml
Running: C:\Kaos\Engine\Binaries\ThirdParty\DotNet\6.0.302\windows\dotnet.exe "C:\Kaos\Engine\Binaries\DotNET\UnrealBuildTool\UnrealBuildTool.dll" AresGameEditor Win64 Development -Manifest=C:\Kaos\Engine\Intermediate\Build\Manifest.xml -NoHotReload -xgeexport -NoUBTMakefiles -log="C:\Kaos\Engine\Programs\AutomationTool\Saved\Logs\UBT-AresGameEditor-Win64-Development.txt"
Log file: C:\Kaos\Engine\Programs\AutomationTool\Saved\Logs\UBT-AresGameEditor-Win64-Development.txt
Couldn't find target rules file for target 'AresGameEditor' in rules assembly 'UE5Rules, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'.
Location: C:\Kaos\Engine\Intermediate\Build\BuildRules\UE5Rules.dll
Target rules found:
Took 0.8721204s to run dotnet.exe, ExitCode=6
UnrealBuildTool failed. See log for more details. (C:\Kaos\Engine\Programs\AutomationTool\Saved\Logs\UBT-AresGameEditor-Win64-Development.txt)``` what am i missing lol
nvm i messed up
all good
Failed to create Changelist. Owner: Desc: [CL 23] Updated binaries getting this when commiting binaries
Failed to create Changelist. Owner: Desc: [CL 23] Updated binaries
AutomationTool executed for 0h 15m 4s
AutomationTool exiting with ExitCode=1 (Error_Unknown)
BUILD FAILED```
Is this from build machine or local?
Maybe the p4 env vars are not setup on the cmd line?
or p4 user doesn't have access to the binaries depot?
p4 set on the cmd line will show your current setup
looks like the P4 module might output more detailed info to the log
@cyan jay PS C:\Kaos> p4 set P4CLIENT=Daniel_IRONWARD-SERVER-A_Main_5033 (set) P4EDITOR=C:\Windows\system32\Notepad.exe (set) P4PORT=xxxx.com:1666 (set) P4USER=Daniel (set) P4_ssl:xxx.com:1666_CHARSET=none (set) PS C:\Kaos>
And you're using the RunUAT BuildGraph xxx/BuildEditorAndTools.xml command to build + submit?
Are you passing in the archive path, e.g. -set:ArchiveStream=//SB_depot/SB-Dev-Binaries
I think I also had a problem like this when I first set it up, I think I ended up figuring out how to debug it from VS
It might have been something dumb like the name needs to match the depot path
so maybe your ArchiveStream should be //Ares-Game/Main-Binaries/ ?
sorry it was a long time ago I set this up and I can't really remember
yes
did you check the log? the code looks like it should print the actual p4 commands to the log, you might be able to see what's gone wrong there
sec
Client 'Daniel_IRONWARD-SERVER-A_Main_5033_ArchiveForUGS_IRONWARD-SERVER_c9130ff44f2fb4bac442aa36f8f1a8db' can only be used from host 'IRONWARD-SERVER'.
Client: Daniel_IRONWARD-SERVER-A_Main_5033_ArchiveForUGS_IRONWARD-SERVER_c9130ff44f2fb4bac442aa36f8f1a8db
Owner: Daniel
Host: IRONWARD-SERVER
Root: C:\Kaos\LocalBuilds\ArchiveForUGS\Perforce
Options: noallwrite nocompress nomodtime unlocked clobber rmdir noaltsync
SubmitOptions: submitunchanged
LineEnd: local
Stream: //AresGame/Dev-Binaries
Failed to create Changelist. Owner: Desc: [CL 23] Updated binaries```
the host is wrong
its IRONWARD-SERVER-A
but this sets the host as IRONWARD-SERVER
π€¦ββοΈ
somewhere in P4Utils.cs I suspect
public P4ClientInfo CreateClient(P4ClientInfo ClientSpec, bool AllowSpew = true)
likely this function
Client.Host = Environment.MachineName;
Apparently Windows machine names need to be 15 characters or less
I have hit this bug many years ago
Depending on the API you use to query it, it will either return the full name or the truncated one
@long mural
good bug π
so def trunated
i renamed servers
to be less than 15 chars each
just need to update everything to reflect it
its all working now thanks @cyan jay
precompiled binaries synced perfectly to the artist machine
Nice π
is there anyone here who can tell me how I can enable the "source control button" in unreal 5.1?
Any P4 experts here?
Cannot add file '//deadmatter/main/Engine/Source/ThirdParty/Unix/LibCxx/include/c++/v1/__string/char_traits.h', filename collides with an existing file '//deadmatter/main/Engine/Source/ThirdParty/Unix/LibCxx/include/c++/v1/__string'.```
Download 5.2 via git
reconcile and push to p4 server and I get this error.
I've remove the folder, and reverted it in git, and re-added manually, and it is the same issue when I go to submit.
Does it think __string is a file, not a directory?
I think so, I tried deleting the folder and recreating it by hand and then restoring the two files in it.
I've basically recreated everything by hand and it still wont budge.
There is no history. This is a 5.2 engine upgrade, and this is the first time this folder/file existed.
As in, this is the first time our P4 server is seeing this file.
This is retarded.
If I rename the folder from __string to dummy
submit to p4
then rename it back to __string it works...
There may be some sort of special handling for files starting with __
Yea. One hell of a bug.
Kind of like how the "." files were not meant to be actual files but a crutch that everyone ended up using. (in Linux)
Heh
Now P4Java on Jenkins is stuck on it. There is no way this was actually tested in a production environment.
is there a way I can get perforce to work with portforwarding
Hey, I recently discovered that the "status branch" popup warning doesn't work anymore in UE5.2. Can you confirm it, with Git?
From my testing and looking at the history of the Editor, I don't think it's something that can be worked around; the context menu to checkout an asset is calling a different overload of CheckoutPackages() that doesn't check if other branches contain changes π¦
hey looking for advice on setting up source contnrol for a 10~ person project
looking at perforce aws but it doesn't seem to be the most effecient option
Quick question - Under what circumstances should I consider running multiple perforce servers?
I currently have more than one unreal project I'm working on. I'm wondering if I should run a separate perforce server (docker container) for each, or if it is acceptable practice to share a one server / repo.
It's more than possible to have multiple projects per server, especially useful for having shared engine etc.
But I quite like having per project server. Makes it easy to archive the whole thing when you're done.
There's little to no reason to be running multiple servers unless you have a specific reason to need multiple servers (replication/scaling - not something to be worrying about unless you're a big studio). Having multiple depots is how you deal with multiple projects.
I'm having a problem connecting my P4V to P4D over a LAN. On the P4V side it states that the Host isn't responding. I've looked up this issue and completed all steps like port forwarding, made sure my services were running properly, Even tried another computer. Has anyone had this problem and willing to assist some?
You're port forwarding over LAN? Do you have multiple networks?
Can you ping the other computer on your LAN?
No, just one network. I can ping over my LAN. I didn't think I needed to port forward but I was trying everything. Apparently my solution was very simple yet hard to find. I needed to allow port 1666 through my firewall on windows, not my router. After that I can connect all of them together now. I spent 2 days trying to figure out Perforce and this issue.
Thank you @teal bone for your attempt to help.
Why... woudl you for open a port on your (I assume) internet router to allow traffic to flow over your LAN?
I haven't used any software like Perforce before. It didn't make sense to me either but I just assumed there was something I didn't know. I was trying everything I could find.
Ah.
Yeah, I still have a lot to learn clearly. Thank you though for trying.
where can i find documentation on actually deploying UGS???
everything on the wiki keeps presuming someone has set it up but no links to how its actually done??
I'm confused - I was told today that upgrading to 5 will change your uasset files. But I've been told that only the uproject and other files that don't need to be source controlled are changed. Which is it?
uproject is source controlled
unreal engine 5 is compatible with prior uasset files
over time, you will save the files and they will upgrade automatically to the new format
It's going to cahnge them all at some point as you update, yeah.
And it depends what version you upgrade from ofc.
What I mean is, if my project files aren't CHANGED until I open and resave them in UE5, things like texture files or static meshes - I know they are still uassets but if they aren't altered
So wth does Failed to Load Editor mean?
when I open the engine up in 5.2 and it shows the proejcts, it shows my project as a 5.2 project, but when I try to open it I get that error - in my solution file it says UE5 (not found)
Did you regenerate project files...?
The VS sln has nothing to do with uassets either so I'm not sure why you're talking about them.
He right clicked -> change engine version to 5.2
I said that he would probably need to update his assets after upgrading to 5. I was probably mistaken!
going through now, which folders do I need to check out to ensure perforce isn't locking down a file that needs to be writable for the conversion process?
Again, the only thing it touches is the uproject file
The sln/vcxproj files shouldn't even be tracked by perforce. Make sure it's actually succeeding at regenerating project files - it probably isn't.
Using bundled DotNet SDK version: 6.0.302
Running UnrealBuildTool: dotnet "..\..\Engine\Binaries\DotNET\UnrealBuildTool\UnrealBuildTool.dll" -projectfiles -project="C:/LiveSimDepotRoot/depot/LiveSimulator.uproject" -game -rocket -progress -log="C:\LiveSimDepotRoot\depot/Saved/Logs/UnrealVersionSelector-2023.06.15-22.42.09.log"
Log file: C:\LiveSimDepotRoot\depot\Saved\Logs\UnrealVersionSelector-2023.06.15-22.42.09.log
Log file: C:\Users\Blake\AppData\Local\UnrealBuildTool\Log_GPF.txt
Some Platforms were skipped due to invalid SDK setup: IOS, Android, Linux, LinuxArm64.
See the log file for detailed information
Generating VisualStudio2019 project files:
Discovering modules, targets and source code for project...
DEPRECATION: 'IniKeyBlacklist', which is a config key in section [/Script/UnrealEd.ProjectPackagingSettings], in 'C:\LiveSimDepotRoot\depot\Config\DefaultGame.ini', has been deprecated. Using 'IniKeyDenylist' instead. It is recommended you update your .ini files as soon as possible, and replace IniKeyBlacklist with IniKeyDenylist
Binding IntelliSense data...
Exception while generating include data for MyProjectEditor: Expecting to find a type to be declared in a module rules named 'VictoryBPLibrary' in UE5Rules, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null. This type must derive from the 'ModuleRules' type defined by Unreal Build Tool.
Binding IntelliSense data... 100%
Writing project files...
Writing project files 100% and ```then it closes
I guess the victory BP file is having an issue? it shouldn't I downloaded it and placed it where it normally goes
Expecting to find a type to be declared in a module rules named 'VictoryBPLibrary' in UE5Rules, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null. This type must derive from the 'ModuleRules' type defined by Unreal Build Tool.
What do you mean you placed it where it normally goes?
If you placed it in the engine's plugins directory, that isn't where it normally goes. Hasn't been since 5.0.
I download the plugin folder and extract it to a folder in /PLUGINS of the 5.2 Install directory
OH
Yeah, that's wrong.
well that would do it
fucking they didn't mention that in the upgrade video IRRC
You can only place plugins for a non-source-built-engine in either the project's plugins folder or the marketplace folder of the engine's plugins folder.
They don't mention it because they don't expect you to manually install engine-wide plugins... you generally install them in projects, not the engine, unless you're on a source build.
understood
so this?
yes
though you should really be installing that in the game's plugins directory
if that's a required dependency for your project then you're not including a dependency in source control.
Well it's not something I can't get any other time
I use Victory BP in pretty much any project so I'm okay with it being engine wide, is my reasoning wrong?
For one, if you make any changes you're not storing those in source control. And you can't easily rebuild plugins in the engine directory. Secondly, you now have to remember to install it every time you change PCs or update the engine, as does anyone else who may work on it with you.
uhhhh
that is a random json-formatted log file, yes
I'm trying to find why it am still getting "Failed editor start"
Because you either haven't regenerated project files, still have an error regenerating project files, or have some other build error.
this isn't even a real error is it? Severity Code Description Project File Line Suppression State Error MSB3073 The command ""C:\Program Files\Epic Games\UE_5.2\Engine\Build\BatchFiles\Build.bat" MyProjectEditor Win64 Development -Project="C:\LiveSimDepotRoot\depot\LiveSimulator.uproject" -WaitMutex -FromMsBuild" exited with code 6. LiveSimulator C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.MakeFile.Targets 45
That's teh error you get when you can't see the other errors.
an the fun realizing you never downloaded the editor symbols
Where is the spot that shows what plugins are required- I need to remove one before it will build
the uproject or build.cs files depending on what you mean by "required"
I'm going from 4.26 to 5.2 - did they add anything new to the engine ....
Quite a lot?
Thanks for the help btw, the editor is finally loading up, doing the shaders thing - I had to disable a bunch of plugins so I'll have to spend a fair amount of time fixing stuff but it's actually loading
Hello, I am having a problem, I modified a file and a colleague modified the same file and a conflict was generated when pulling its version, is there a way to ignore that file specifically from its repository and pull the rest? thank you
more of a plugin question but if there weren't huge changes made specifically that affected the plugin, but they haven't released it, can I copy the 5.1 copy of that plugin into my project's plugin folder for the meantime and try to rebuild?
You can always try
If I believe in myself, really really hard, will that help?
crap, I spoke to soon - UE5.2 crashes everytime when I load this project, opens fine on others . oginId:bbf3ca904c2b78349da99896591d4835
EpicAccountId:73dc00cb212e49c4bc10b4bbf40cb541
Assertion failed: NewOperatorInputA [File:D:\build++UE5\Sync\Engine\Source\Editor\BlueprintGraph\Private\K2Node_CommutativeAssociativeBinaryOperator.cpp] [Line: 297]
UnrealEditor_KismetCompiler!FKismetCompilerContext::ExpansionStep() [D:\build\++UE5\Sync\Engine\Source\Editor\KismetCompiler\Private\KismetCompiler.cpp:3756]
UnrealEditor_KismetCompiler!FKismetCompilerContext::CreateAndProcessUbergraph() [D:\build\++UE5\Sync\Engine\Source\Editor\KismetCompiler\Private\KismetCompiler.cpp:4008]
UnrealEditor_KismetCompiler!FKismetCompilerContext::CreateFunctionList() [D:\build\++UE5\Sync\Engine\Source\Editor\KismetCompiler\Private\KismetCompiler.cpp:4554]
UnrealEditor_KismetCompiler!FKismetCompilerContext::CompileClassLayout() [D:\build\++UE5\Sync\Engine\Source\Editor\KismetCompiler\Private\KismetCompiler.cpp:4770]
UnrealEditor_Kismet!FBlueprintCompilationManagerImpl::FlushCompilationQueueImpl() [D:\build\++UE5\Sync\Engine\Source\Editor\Kismet\Private\BlueprintCompilationManager.cpp:1381]
UnrealEditor_Kismet!FBlueprintCompilationManager::FlushCompilationQueue() [D:\build\++UE5\Sync\Engine\Source\Editor\Kismet\Private\BlueprintCompilationManager.cpp:3348]
UnrealEditor_CoreUObject!FScopedClassDependencyGather::~FScopedClassDependencyGather() [D:\build\++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\Blueprint\BlueprintSupport.cpp:485]
UnrealEditor_CoreUObject!FLinkerLoad::CreateExport() [D:\build\++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\LinkerLoad.cpp:5372]```
Start removing your blueprints until it works, I guess?
Apparantely Instanced Stereo worked in 5.0 and 5.1 but not 5.2 because it will work in 5.3 - that literally seems to be the issue
now it crashes when I try to load any blueprint - I checked them out in perforce just in case that was making it crash
What's the actual workflow for upgrading versions, in regards to Perforce? -
1 - Check out every file, like config, source, and uproject (as well as content, we can always revert unchanged files)
2 - Open project from the 5.2 editor program.
3 - Convert in-place
4- open project once conversion is done and check that various assets open
5- go back to perforce, Revert Unchanged files
6 - push pending change list as "Newly convert to 5.2"
Someone please tell me if I am missing something
Quick question regarding source control and editor preferences~ what's the best/preferred way of looping editor preferences into source control? This would be very useful for certain template repos to be able to do?
I'm not sure what you're asking in this question, but all you have to do is change the engine association in the uproject. you dont need to convert in place or anything like that. that's all you submit
plus any changes to project/plugin source code needed to make it compile
Guys I'm so proud of myself. I actually started using proper version control today! I setup git LFS and paid for it too. No more Everything.zip backup files with an incrementing number on my second hard drive anymore lol
$5/month ($6.62 CAD after tax) for 50gb is reasonable. Highly recommend using git lfs if you aren't already. Just have to spend some time figuring out which content can be ignored because you can always download it again from the marketplace or megascans. Everything custom gets uploaded without any worries of data loss in the future.
I've also wondered about this. I've pulled repos I've been working in on other computers and I've had to redo a lot of the settings. Definitely a pain
Config/DefaultEditor.ini
Config/DefaultEditorKeyBindings.ini
Config/DefaultEditorPerProjectUserSettings.ini
Config/DefaultEditorSettings.ini
Config/DefaultNiagara.ini
Config/DefaultLightmass.ini
etc
just put Default in front of your ini and put it in Config
cc @solemn bone
That makes sense. Thanks I'm a little new to Unreal and trying to learn!
Would you happen to know the correct ini file for experimental settings? My specific use case is that I like to organize my files pretty particularly but sometimes run into File Path character issues due to their length. I check on the Long File Path in the experimental settings and it fixes the issue but I always have to reset it when I pull the project on a new pc
Thanks! Iβve been looking into this but the documentation on the specific settings and what syntax to use is pretty bare. Is there a more comprehensive guide on how to set my settings via the .INI files that you could point to?
[/Script/UnrealEd.EditorExperimentalSettings]
bEnableLongPathsSupport=True
You've just made my week. Thanks man
Can I put that in the DefaultEditor.ini?
Oh sorry! It's DefaultEditorPerProjectUserSettings.ini
Lol all good. I just make that file if it doesnt exist and copy paste and its all done?
yup
Youre a hero. This'll help me out this weekend a lot
There's no one guide for it, but you can either search within your own config for values and copy them over (in Saved/Config/Windows), OR you can enable the Display Documentation Link setting in editor preferences! Then on hover, it will display the configuration variable name, and you can look it up in Unreal Engine source code / your own config files to figure out where it goes
one last thing, is you can set arbitrary console variables on startup with [SystemSettingsEditor] in DefaultEngine.ini
these will unfortunately not override [SystemSettings] which is for game and editor, but it's still useful to set editor specific settings
Awesome thanks again ππ
That Display Documentation Link is exactly what I needed.
Is there anyone who be able to use other volumes as Perforce storage in linux server?
When you setup a depot you can change the path for the files in the Map field.
Also possible to move a depot in the same way, but you must manually copy the archive files to the new location.
Epic recommends "Opening a Copy" when converting, and they write it like it's not just because of the need to have a backup, like it the process somehow is different on the backend. If I do this, how do I ensure that I get that upgraded version into my source control without having a giant changelist? Is it as simple as copying the "converted copy" of the new uproject file to the original project directory?
(sorry if i'm asking in the wrong channel)
we are a small team of 3, and we are using svn for source control the problem is that whenever one of us opens the gameplay level, instanced foliage actors are marked as dirty and need to be resaved and pushed to server.
any way to fix this?
If you mark teh files as readonly, the engine should at least ask if you want to remove that flag.
Github + LFS is by far the best solution as far as bang for your buck goes
I used it on large projects with many people working together
My dude you've had this answered like 3-4 times from multiple people. Upgrading to a new engine version does not touch files other than the uproject unless you explicitly do so yourself. No matter how many times you ask the answer doesn't change.
The "open a copy" dialog that appeared in 5.x is because saving any assets after the upgrade means those assets become incompatible with earlier versions. Which shouldn't be an issue for you because you're using source control and can simply revert everything.
An engine upgrade involves nothing more than changing the uproject file to reference the new engine version. Nothing else happens aside from the engine attempting to regenerate project files (and generally failing). No assets get touched, no source files, nothing. Making a copy is purely a safety measure for people who might not have backups or source control and then find out they need to go back to the earlier version after saving some assets in the new one.
yeah don't select the copy option, just skip the process, simply switch the version
I have perforce storage set up locally on my windows machine, but am struggling to find tutorials about setting up a remote server (is that even the right term for remote storage?) So far all I've been able to find is that digitalocean is good for that? I'm really stuck here and google hasn't been helping, so any advice or links would really be appreciated!
tried to push a 317mb file from git to azure and it failed to push refs http 413
could anyone help with this?
@trim abyss not sure how to help but here is what gpt4 has to say ```Here are some general guidelines on how you might accomplish this. I'm assuming you're using DigitalOcean, but the same basic principles would apply to any cloud provider:
Create a new Droplet on DigitalOcean: You can choose the operating system (Linux distributions like Ubuntu are common choices), size, and datacenter region. If you're not sure what to choose, the default options are usually a good starting point. Once your droplet is created, you'll be able to access it using SSH.
Update your system: It's always a good idea to make sure your system is up-to-date before installing new software. On Ubuntu, you can do this with the commands sudo apt update and sudo apt upgrade.
Download and install the Perforce server software: As of my knowledge cutoff in September 2021, Perforce provides a Linux package that can be downloaded from their website. You might need to sign up for a free account to access this. Once you've downloaded the package, you can install it with the dpkg command (on Ubuntu). The commands might look something like this:
bash
Copy code
wget https://cdist2.perforce.com/perforce/r20.1/bin.linux26x86_64/p4d
chmod +x p4d
sudo mv p4d /usr/local/bin```
Start the Perforce server: You can start the Perforce server with the p4d command. You'll want to set this up to run automatically when your server boots. On Ubuntu, you can do this by creating a systemd service.
Configure your firewall: To ensure that you can access your Perforce server from your local machine, you'll need to open the appropriate port in your firewall. On DigitalOcean, you can do this through the networking tab in the droplet control panel.
Connect to the Perforce server from your local machine: Finally, you'll need to configure your local Perforce client to connect to your new server. You can do this by setting the P4PORT environment variable to the IP address and port of your server, and using the p4 command to log in.```
Setting up a remote machine: This could be a server in your own data center or a virtual server in the cloud. Many cloud providers offer virtual machines, such as AWS EC2 instances, Google Compute Engine, Azure Virtual Machines, and DigitalOcean Droplets. These allow you to choose your hardware specifications and operating system, and they can be accessed remotely over the internet.
Installing the Perforce server software: Once you have your remote machine set up, you can install the Perforce server software (also known as the Perforce Helix Core server). This involves downloading the appropriate package for your operating system from the Perforce website and installing it on your server.
Configuring the Perforce server: After the Perforce server software is installed, you need to configure it. This includes setting up users, permissions, and workspaces, as well as configuring the server to start automatically when the machine boots up.
jfc please don't do what it says. And please stop giving chatgpt advice.
Not only does it outright tell you that its knowledge is cut off from 2021 (and therefore is pretty much guaranteed to be giving you an old install link... if that link even exists) but it's telling you how to do a manual install that isn't even correct rather than using a package manager.
Not sure why some decide to use ChatGPT on the behalf of others, especially when they can't verify the accuracy of it
Can anyone else recommend some advice? I'm at the stage in my project where the game is getting a bit more serious and I really don't want to lose anything!
How do I replace a file with an updated one so that perforce recognizes it as the "new" one but still gives it access to the revision history for that file?
checkout the file, replace the file
best method for two people to work on a small project?
you're probably going to want to start out by finding some tutorials about starting up and interacting with your own linux VPS, and learning basic linux skills. learning how to do unix based sys admin work is a fairly annoying task in and of itself. once you can navigate around in a unix environment and stumble through things like permissions you can try to install a perforce package onto your VPS. expect lots of stumbling.
hello, i goofed my p4 submissions, i deleted some files manually, can i force the change some how?
if you reconcile the relevant directories, it should detect the deletions for you
let me try p4 rec something i guess
not a p4v user?
Yep, that's just a limitation of GitHub D:
You can technically add the @ EpicGames organization team back
but
it usually crashes
I am crating a game based on the Lyra Project from Unreal, and have set up a git repository.
I am using the standard Unreal .gitignore file.
However, a lot of plugin Intermediate and Binaries are still included such as:
Plugins\GameFeatures\TopDownArena\Intermediate\Build\Win64\UnrealEditor\Inc\TopDownArenaRuntime\UHT\Timestamp
I can see that I have already pushed these files earlier, but that was after the initial .gitignore file was pushed.
Shouldn't "Plugins/* /Intermediate/*" take care of this?
Ignore files are used for determining whether to add files. Delete the files and commit their deletion.
@north vine
Thanks HoJo! I just don't understand why they were added in the first place then?
Hard to say, think I misread your original message too (thought you said you pushed the ignore after)
Any Perforce experts in here?
Does this graph make sense? I'm trying to combine virtual production and the developer stream and keep them together under one graph.
From my understanding is that the virtual streams are just part of the inner directory of the main stream, for example UGS is under /UnrealEngine/Engine/Source/Programs/UnrealGameSync so the underlying files are updated to the parent stream.
I've seen other people using different methods, but this way works no?
ue5 takes a long time to load because it needs to add files to source control. it takes 20min to launch. others on the same project/git repo donβt have this issue. what can i do? any help would be appreciated
In Git (GitHub) How do I merge in 5.2.1 into a branch I made?
So I was on release branch. I made a new branch βexampleβ. Made 2-3 small changes there.
Now I want to update βexampleβ to include the 5.2.1 upstream changes from βreleaseβ without losing my changes.
Do you have any error log warning spam going on during opening?
In github desktop I would just do "update from main" or whatever branch youw ant to udpate from.
let me check in a couple hours
Just wanted to say I got this yesterday when upgrading from 5.1 to 5.2; trying to submit the 5.2 update.
Seems that in 5.1 the __string was a file and in 5.2 the file is removed and it's a directory with 2 files beneath.
I wasn't able to fix this in a single changelist, even marking for delete got p4 confused, but I was able to submit a CL with a delete of __strings file first, then submit the next CL with the rest of the changes.
github desktop has spoiled me and now I have completely forgotten most git commands lol.
I needed to keep some custom plugins added to my source control (perforce) but I msitakenly added the intermediate/source folders for the project. Now I can't delete them from perforce. Do I have to check them out, delete them in windows, then submit that event? I tried marking them for deleted but got a file permision error inside perforce
open for read: C:\LiveSimDepotRoot\depot\Plugins\SortVectorBlake\Binaries\Win64\UnrealEditor-SortVectorBlake.dll: The system cannot find the path specified.
open for read: C```
reconcile offline work in p4v for those folders
if a file is tracked in perforce you must delete it via perforce (or reconcile after the fact), not windows explorer.
Hey @grave vortex -- did you end up going with Contabo? We're in a similar situation on a UE5 project, just curious how it might be working for you
I did. It was a fairly smooth experience and good value ππ»
I thought as much - but I tried to do it in perforce and it didn't work the first time, so I thought I had to "check it out" then delete it, and that might fix it but obviously not
I've used them too - they are good but you shouldn't expect absolutely instant service - but if you don't have problems and you know what you are doing you can do well
This wasn't offline work btw - I had pulled the latest changes, which included this plugins folder, but that came with it the stuff I didn't need - if anything I need to do a "unget this latest changelist"
Deleting files that are tracked in perforce without telling perforce about it is doing offline work
ah okay
you don't need to "unget this latest changelist", you need to tell perforce to delete those files. Stop deleting tracked files outside of perforce and you won't have this problem.
(a properly hooked up editor marks files for delete in perforce as well)
I swear I tried to do that initially
Hi I have a small question. We are currently are using Perforce for our small project but we reached the 5 user limit but we don't have any income yet to buy a license. Since we have the 20 workspaces we can share accounts and have more people working.
So by paraphrasing DiCaprio:
Is all this legal?
The question is whether it breaches the contract you entered into with the makers of Perforce. If you're sticking to the 5 users, 20 workspaces limit I'm not sure why it wouldn't be.
What you'll probably find is that it quickly gets annoying to share user accounts, tracking changes etc, but as a startup you gotta do what you gotta do.
I guess I need to check the TOS then. I want to find out the pricing, but all I got is to contact sales. Imagine if they advice me to share the accounts for now XD
They're quite good at getting back to you with a quote quickly. I don't know why they don't publish their prices tbh.
worst case, I'll have two of them
is there any way to merge 2 branches with blueprints?