pure server whitelist

Discussion in 'Support' started by Coffeeburrito, Jul 19, 2009.

  1. Coffeeburrito

    Coffeeburrito Coder

    Messages:
    542
    Likes Received:
    0
    Trophy Points:
    0
    Currently the problem with sv_pure is that every protected file has to be hashed every time the server starts, and that can take up to several minutes. Since Empires is going to be on steamworks, this theoretically means that servers can reference the steam cache instead of having to calculate CRCs manually. Or at least that's my understanding of it.

    If I were to make a whitelist, I'd do something like this:
    Code:
    whitelist
    {
    	//
    	// 3 modifiers are allowed on file specifications:
    	//
    	//	from_steam		- only check the Steam cache for the file (ignore anything on disk)
    	//	allow_from_disk		- allow the file to come from disk
    	//	check_crc		- used with allow_from_disk - server does CRC checks on the client's file to make sure it matches
    	//
    	//	The default modifier on all files is allow_from_disk. Thus, all files can come from disk and don't need CRC checks unless 
    	//	allow_from_disk can be set at the same time as check_crc. Use the + character in between them to signify this: allow_from_disk+check_crc.
    	//
    	// Three types of file specifications:
    	//
    	//	1. directory\*.*	- refers to all files under the directory
    	//	2. directory\...	- refers to all files under the directory and all directories under that (recursively)
    	//	3. directory\filename	- refers to a single file
    	//
    	// Keep in mind this file is applied in sequential order; later entries can override previous entries.
    
    	// Defaults
    	materials\...			from_steam
    	models\...			from_steam
    	sound\...			allow_from_disk
    
    	// Materials
    	materials\loading\...		allow_from_disk
    	materials\console\...		allow_from_disk
    	materials\vgui\...		allow_from_disk
    	materials\temp\...		allow_from_disk
    
    	// Models
    	// I can't think of any models that merit exception
    
    	// Sounds -- Weapon sounds can be replaced with more unique stuff, and knowing your enemy's weapon can be exploited
    	sound\weapons\...		from_steam
    	sound\explosion\...		from_steam
    }
    Did I miss anything?
     
  2. Omega_K2

    Omega_K2 Member

    Messages:
    343
    Likes Received:
    0
    Trophy Points:
    0
    I think custom maps with custom models/textures will cause problems.
     
  3. blizzerd

    blizzerd Member

    Messages:
    10,552
    Likes Received:
    60
    Trophy Points:
    0
    cant you add in a emp_* wildcard for maps?


    or perhaps if your map is approved to become part of "pure" (not official, just like.... community approved quality) it gets put in there and "pure" servers can run it as pure gameplay (so newbies dont join in megadownhilljamm games on there first game
     
  4. Brutos

    Brutos Administrator Staff Member Moderator

    Messages:
    3,385
    Likes Received:
    0
    Trophy Points:
    0
    Dont you need to add exceptions for cfg, downloadlists, downloads, logs, screenshots, maps, particles etc?
     
  5. Coffeeburrito

    Coffeeburrito Coder

    Messages:
    542
    Likes Received:
    0
    Trophy Points:
    0
    no

    That's a very good point. If all the models and textures were formally reorganized for logical consistency, there could be a single folder under which all custom assets could be placed. That would require a lot of recompiling for everyone though. Until then, I suppose server operators will just have to add those new files to the whitelist manually, or disable sv_pure.
     
  6. MOOtant

    MOOtant Member

    Messages:
    4,047
    Likes Received:
    0
    Trophy Points:
    0
    Doesn't sv_pure handle files that exist in GCF? Custom map's materials might not be there so they shouldn't be affected. I'm not sure if that's the case but it's logical.
     
  7. recon

    recon SM Support Dev

    Messages:
    2,348
    Likes Received:
    0
    Trophy Points:
    0
    How about creating folders for custom materials, models, etc?
    Code:
    materials\custom\...         check_crc
    models\custom\...            check_crc
    
    Then mappers could make use of those folders.
     
    Last edited: Jul 19, 2009
  8. Omega_K2

    Omega_K2 Member

    Messages:
    343
    Likes Received:
    0
    Trophy Points:
    0
    Now you just need mappers to get use the folders custom in their future releases and since most don't really have a clue, it might be harder then you expect.. :P
     

Share This Page