I have a solution that I've been working on that may or may not be applicable to your scenario, so I have a couple questions about some of your requirements.
Our system is based on a semi-consecutive numbering scheme which we use to identify files and versions. It looks like this - xx.xx.xxxx.y, where x is a digit (record) and y is a letter (version). xx.xx is assigned by project, so really only the last four x's and the letter are what I need to deal with. NB: you can have xx.xx.1001.A and xx.xx.1001.B - totally ok.
Would it be possible to have a choice column containing all the possibilities of the "xx.xx" and ".y" values, so when a new item is added to the list, a user can just select these as appropriate for the item? Also, would "xx.xx.1001.A" and "xx.xx.1001.B" be considered versions of the same record, or are these completely separate (do you need versioning)?
My solution will create the autonumbering, but because of your identifier scheme, I'm trying to see if we could just use other columns in addition, to build out the full ID for each item by just making additional selections for the rest of the identifier as each item is created on the list.
Would something like that work?...can you provide some more information on how each ID is/should be created?